/* Full-bleed portrait and quieter editorial layout. */
body{max-width:none}.preview{position:relative;z-index:4;min-height:32px}.masthead{position:absolute;top:32px;left:0;width:100%;z-index:3;color:#fff}header{border-color:#ffffff38;padding:25px 5.5%}header .button{background:#f5f2ec;color:#242321;border-color:#f5f2ec}header nav a{font-size:12px;text-shadow:0 1px 6px #000}header .button:hover{background:#e4deec}.hero{position:relative;isolation:isolate;display:flex;min-height:calc(100svh - 32px);padding:150px 7% 35px;gap:0;overflow:hidden;background:#242321;color:#faf8f4}.hero-photo{position:absolute;inset:0;margin:0;min-height:0;z-index:-2}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:62% 43%;filter:none}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,9,9,.88) 0%,rgba(9,9,9,.67) 32%,rgba(9,9,9,.12) 70%),linear-gradient(0deg,rgba(0,0,0,.57),transparent 35%)}.hero-copy{padding:0;width:100%;align-self:stretch;justify-content:center;align-items:flex-start}.hero .eyebrow{color:#e6deed;font-size:10px;margin-top:auto;margin-bottom:24px}.hero h1{font-size:clamp(76px,8.5vw,132px);line-height:.98;max-width:650px;letter-spacing:-4px}.hero h1 em{color:#e8ddef}.hero .intro{color:#eee9e3;font-size:15px;max-width:320px;margin:27px 0}.hero .button{background:#e4deec;border-color:#e4deec;color:#242321;min-width:235px}.hero .button:hover{background:#fff}.hero .micro{color:#e0d8d0;font-size:10px;max-width:300px}.hero-bottom{margin-top:auto;padding-top:65px;color:#eee7df;flex-direction:row}.hero-bottom a{min-height:30px}.hero-photo figcaption{right:7%;left:auto;bottom:88px;font-size:17px}.ribbon{padding:16px 7%;font-size:9px}.section{padding-top:105px;padding-bottom:105px}.section-head{align-items:center}.section-head>p{border-left:1px solid var(--line);padding-left:28px}.tabs{margin-top:48px;gap:30px}.tab{min-height:48px}.gallery{gap:30px}.art{border-radius:120px 120px 0 0;overflow:hidden}.art .sample{top:auto;bottom:18px;left:50%;transform:translateX(-50%);white-space:nowrap}.art svg{width:65%;height:70%}.design:nth-child(2){padding-top:35px}.design h3{font-size:25px}.design-meta{display:block}.design-meta span{display:block;margin-top:5px}.process{position:relative}.process h2{max-width:700px}.steps{margin-top:65px;gap:65px}.steps article>span{font-family:Georgia,serif;font-style:italic;font-size:24px}.artist{grid-template-columns:1fr 1fr;gap:10%;background:#eee9e1}.artist-statement{background:var(--lavender);padding:55px 35px;min-height:420px;display:flex;flex-direction:column;justify-content:space-between}.artist-statement>p{font-family:Georgia,serif!important;font-size:clamp(28px,3.2vw,46px)!important;line-height:1.2;color:var(--ink)!important;letter-spacing:-1px;margin:30px 0!important}.artist-signature{font-size:10px;letter-spacing:3px}.details{border-top:0}.booking{border-top:1px solid #d5cadd}.booking form{padding:38px;box-shadow:0 12px 45px #34283c08}.visit{background:var(--paper)}
@media(min-width:1500px){.hero-copy{max-width:1500px;margin:0 auto}.hero{min-height:850px}.hero-photo img{object-position:center 42%}}
@media(max-width:800px){.hero{min-height:850px;padding-top:150px}.hero h1{font-size:92px}.hero-photo img{object-position:61% 43%}.hero:after{background:linear-gradient(90deg,#090909d9,#09090970 55%,#09090915),linear-gradient(0deg,#0007,transparent 40%)}.hero .intro{max-width:280px}.section{padding-top:75px;padding-bottom:75px}.artist{gap:6%}.artist-statement{padding:35px 24px;min-height:380px}.artist-statement>p{font-size:31px!important}.booking form{padding:25px}.steps{gap:30px}.gallery{gap:20px}.design h3{font-size:22px}}
@media(max-width:600px){.preview{min-height:46px;font-size:8px;padding:6px 10px}.preview span{font-size:8px}.masthead{top:46px}header{padding:20px 6%}header .small{padding:10px 12px;gap:14px;font-size:10px}.hero{min-height:calc(100svh - 46px);padding:125px 6% 22px;display:flex}.hero-copy{padding:0;justify-content:flex-end}.hero-photo{height:auto;margin:0;inset:0}.hero-photo img{object-position:62% 43%}.hero:after{background:linear-gradient(0deg,rgba(7,7,7,.94) 0%,rgba(7,7,7,.75) 29%,rgba(7,7,7,.12) 65%,rgba(7,7,7,.38) 100%)}.hero .eyebrow{margin-top:100px;font-size:8px;letter-spacing:1.4px;margin-bottom:16px}.hero h1{font-size:clamp(64px,17vw,96px);letter-spacing:-2.5px}.hero .intro{font-size:13px;max-width:280px;margin:18px 0}.hero .button{min-height:52px;min-width:230px}.hero .micro{font-size:9px;margin:12px 0 0}.hero-bottom{padding-top:30px;margin-top:0;font-size:8px;align-items:center}.hero-photo figcaption{display:none}.ribbon{padding:13px 6%;font-size:7px}.section{padding:62px 6%}.section-head>p{border:0;padding:0}.tabs{margin-top:28px}.gallery{gap:25px 16px}.design:nth-child(2){padding-top:26px}.design h3{font-size:21px}.art{border-radius:85px 85px 0 0}.art .sample{font-size:6px;bottom:12px}.steps{margin-top:35px}.artist{grid-template-columns:1fr;gap:35px}.artist-statement{min-height:300px;padding:30px}.artist-statement>p{font-size:38px!important}.booking form{padding:23px 18px}.visit{gap:20px}.privacy{padding-top:25px;padding-bottom:25px}}
@media(max-height:600px) and (min-width:601px){.hero{min-height:760px}}

/* Keep the portrait free of a large headline. Image proportions stay natural. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.hero{display:block;padding:0;min-height:0;overflow:visible;background:var(--cream);color:var(--ink)}
.hero-photo{position:relative;inset:auto;z-index:0;width:100%;height:clamp(560px,76svh,920px);min-height:0;margin:0;overflow:hidden}
.hero-photo img{position:absolute;inset:0;object-fit:cover;object-position:62% 37%;width:100%;height:100%}
.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0009,transparent 24%);pointer-events:none}
.hero-photo figcaption,.hero:after{display:none}
.hero-copy{position:relative;z-index:1;padding:24px 7%;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:35px;max-width:none;background:var(--cream)}
.hero .eyebrow{color:var(--muted);margin:0 0 6px;grid-column:1;font-size:9px}
.hero .intro{color:var(--ink);margin:0;max-width:520px;grid-column:1;grid-row:2;font-size:14px}
.hero .button{grid-column:2;grid-row:1 / span 2;min-width:235px;background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hero .button:hover{background:#46413e}
.hero .micro,.hero-bottom{display:none}
.hero{display:flex;flex-direction:column}.hero-photo{order:0}.hero-copy{order:1}
@media(min-width:1500px){.hero{min-height:0}.hero-copy{margin:0;width:100%}}
@media(max-width:800px){.hero{min-height:0;padding:0}.hero-photo{height:clamp(540px,72svh,800px)}.hero .intro{max-width:360px;font-size:13px}.hero-copy{padding:25px 6%;gap:12px 25px}.hero .eyebrow{margin:0}.hero .button{min-width:210px}}
@media(max-width:600px){.hero{min-height:0;padding:0}.hero-photo{height:68svh;min-height:440px;max-height:720px;margin:0}.hero-photo img{object-position:60% 35%}.hero-copy{display:flex;align-items:flex-start;justify-content:flex-start;padding:24px 6%;gap:0}.hero .eyebrow{margin:0 0 9px;font-size:8px}.hero .intro{font-size:13px;margin:0 0 18px;max-width:350px}.hero .button{min-width:235px;min-height:52px}.hero .micro,.hero-bottom{display:none}}
