/* The approved opening, rebuilt with semantic text and real controls. */
.live-home .site-header.home{background:linear-gradient(90deg,#f7ecdc 44%,transparent 44%);padding:24px 4.8%;gap:24px}
.live-home .brand{font-size:clamp(24px,2.4vw,37px);letter-spacing:.08em}
.live-home .brand small{font-size:8px;letter-spacing:.15em}
.live-home .nav{gap:clamp(14px,1.7vw,29px);color:#fff8ef;font-size:11px}
.live-home .nav-cta{padding:13px 20px}
.live-opening{display:grid;grid-template-columns:44% 56%;min-height:690px;background:#f7ecdc}
.live-opening-copy{padding:155px 8% 45px 11.5%;align-self:center;min-width:0;position:relative}
.live-opening-copy:before{content:'';position:absolute;left:0;top:0;bottom:0;width:14px;background:linear-gradient(#b45149,#f7ecdc,#b45149);opacity:.55}
.live-opening-kicker{display:block;font:clamp(35px,3.9vw,64px)/1.2 'Great Vibes',cursive;color:#a32e48;margin-bottom:5px}
.live-opening h1{font:400 clamp(72px,9.7vw,149px)/.88 'Playfair Display',Georgia,serif;letter-spacing:-.065em;color:#4b1022;margin:0 0 27px}
.live-opening h1 em{display:block;font-weight:400;color:#ad4a45;margin-left:10%}
.live-opening-intro{font:clamp(17px,1.5vw,23px)/1.45 'Playfair Display',Georgia,serif;max-width:490px;padding-top:19px;position:relative}
.live-opening-intro:before{content:'';position:absolute;top:0;left:0;width:45px;height:1px;background:#b45149}
.live-opening-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}
.live-opening-actions .btn{font-size:10px;padding:15px 18px;min-height:44px}
.live-opening-portrait{margin:0;min-width:0;position:relative;overflow:hidden;background:#241916}
.live-opening-portrait img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:48% 50%}
.live-path-note{text-align:center;font:italic 22px/1.3 'Playfair Display',Georgia,serif;margin:0;padding:18px;color:#6b283c;background:#f1daca}
.live-paths{display:grid;grid-template-columns:1fr 1fr;background:#f7ecdc}
.live-path{display:grid;grid-template-columns:45% 55%;min-width:0}
.live-path img{width:100%;height:100%;object-fit:cover;min-height:280px}
.live-path-copy{padding:30px clamp(20px,3vw,46px);min-width:0;align-self:center}
.live-path-copy small{font:italic 19px Georgia,serif;color:#a33e48}
.live-path h2{font-size:clamp(28px,2.8vw,44px);line-height:1.08;color:#4b1022;margin:14px 0}
.live-path p{font:17px/1.5 'Playfair Display',Georgia,serif}
.live-path-dark{grid-template-columns:55% 45%;background:#1b1516;color:#f7ecdc}
.live-path-dark h2{color:#f7ecdc}
.live-path-dark small{color:#e8aaa1}
.live-home a:focus-visible,.menu-button:focus-visible{outline:3px solid #a3324a;outline-offset:5px;box-shadow:0 0 0 8px #fff6ec}
.sample-brief{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;border-block:1px solid #d5b5a6;padding:25px 0;margin:30px 0 45px}
.sample-brief p{font:16px/1.6 'DM Sans',Arial,sans-serif;margin-bottom:0}
.sample-brief strong{display:block;color:#4b1022;margin-bottom:7px}
.portfolio-reading{max-width:780px;margin:auto}
.portfolio-reading h2{font-size:clamp(34px,4vw,56px);line-height:1.15}
.portfolio-reading h3{font-size:clamp(24px,2.5vw,32px);line-height:1.3;margin-top:38px;color:#4b1022}
.portfolio-reading p,.portfolio-reading li{font:19px/1.85 'Playfair Display',Georgia,serif}
.portfolio-reading ul{padding-left:23px}
.sample-label{font:12px/1.6 'DM Sans',Arial,sans-serif!important;color:#714d4a;padding:16px 20px;background:#eedacc;border-left:3px solid #873149}
.email-preview{background:#fffaf3;border:1px solid #d8b9a9;padding:clamp(22px,5vw,55px);margin:30px 0}
.email-preview .email-meta{font:14px/1.7 'DM Sans',Arial,sans-serif;padding-bottom:20px;border-bottom:1px solid #d8b9a9}
.sample-navigation{display:flex;flex-wrap:wrap;gap:14px;margin-top:25px}
.nav a,.text-link{min-height:36px;align-content:center}
html{scroll-padding-top:24px}
@media(max-width:1150px){
 .live-home .site-header.home{position:relative;background:#f7ecdc}
 .live-home .home .nav{color:#4b1022}
 .live-home .site-header{flex-wrap:wrap}
 .live-home .nav{gap:18px}
 .live-opening{min-height:570px}
 .live-opening-copy{padding:55px 8% 45px 11.5%}
 .live-opening h1{font-size:clamp(72px,10vw,115px)}
}
@media(max-width:900px){
 .live-home .site-header.home{flex-wrap:nowrap;gap:12px}
 .live-home .menu-button{display:block;min-width:72px;min-height:44px}
 .live-home .nav{display:none;color:#4b1022}
 .live-home .nav.open{display:flex}
 .live-opening{grid-template-columns:1fr;min-height:0}
 .live-opening-copy{padding:47px 7% 40px}
 .live-opening h1{font-size:clamp(76px,14vw,130px);max-width:650px}
 .live-opening-kicker{font-size:clamp(38px,7vw,60px)}
 .live-opening-intro{font-size:21px;max-width:600px}
 .live-opening-portrait{aspect-ratio:856/632;max-height:600px}
 .live-opening-portrait img{object-position:center}
 .live-path{grid-template-columns:1fr}
 .live-path img{height:220px;min-height:0}
 .live-path-dark img{grid-row:1}
 .live-path-copy{padding:30px}
 .sample-brief{grid-template-columns:1fr;gap:16px}
}
@media(max-width:580px){
 .live-home .brand{font-size:clamp(21px,5.5vw,28px)}
 .live-home .brand small{font-size:7px;max-width:220px}
 .live-opening h1{font-size:clamp(68px,18vw,104px)}
 .live-opening-intro{font-size:19px}
 .live-paths{grid-template-columns:1fr}
 .live-path{grid-template-columns:40% 60%}
 .live-path-dark{grid-template-columns:60% 40%}
 .live-path-dark img{grid-row:auto}
 .live-path-copy{padding:27px 20px}
 .live-path img{height:100%;min-height:265px}
 .live-path h2{font-size:28px}
 .live-path p{font-size:16px}
 .portfolio-reading p,.portfolio-reading li{font-size:18px;line-height:1.8}
 .sample-navigation .btn{width:100%}
}
@media(max-width:380px){.live-path,.live-path-dark{grid-template-columns:1fr}.live-path img{height:210px;min-height:0}.live-path-dark img{grid-row:1}.live-opening-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:400px){
 .site-header,.live-home .site-header.home{gap:12px}
 .site-header .brand,.live-home .site-header .brand{flex:1 1 0;min-width:0;font-size:21px;letter-spacing:.07em}
 .site-header .brand small{font-size:8px;letter-spacing:.08em;line-height:1.6}
 .site-header .menu-button{flex:0 0 auto;min-height:44px;padding:10px 11px}
}
