
:root{--wine:#68112b;--deep:#360c1c;--rose:#bd456e;--blush:#f6e8eb;--cream:#fbf7f3;--ink:#2a1a20;--muted:#76646b;--line:#ead9df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.wrap{width:min(1240px,calc(100% - 44px));margin:auto}.splash{position:fixed;inset:0;z-index:9999;background:var(--deep);display:grid;place-items:center;color:white;transition:opacity .7s,visibility .7s}.splash.hide{opacity:0;visibility:hidden;pointer-events:none}.splash-in{text-align:center;animation:rise .9s both}.splash-monogram{font:600 78px 'Playfair Display',serif;letter-spacing:-8px;color:#f6d6df}.splash-name{font-size:13px;letter-spacing:.38em;text-transform:uppercase}.progress{width:190px;height:2px;background:#ffffff40;margin:25px auto;overflow:hidden}.progress:before{content:'';display:block;height:100%;background:#f3c0ce;animation:load 1.95s ease forwards}@keyframes load{from{width:0}to{width:100%}}@keyframes rise{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}
.top{background:var(--deep);color:#f2dce4;text-align:center;font-size:11px;letter-spacing:.16em;padding:8px}.header{height:83px;background:#fffefaed;backdrop-filter:blur(16px);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-size:23px;font-weight:800;letter-spacing:-1.2px;line-height:1;color:var(--wine)}.logo small{display:block;letter-spacing:.23em;font-size:9px;margin-top:8px}.navlinks{display:flex;align-items:center;gap:22px;font-size:12px;font-weight:700}.navlinks a:hover{color:var(--rose)}.pill{background:var(--wine);color:white!important;padding:12px 21px;border-radius:40px;border:1px solid var(--wine);display:inline-flex;align-items:center;justify-content:center}.pill:hover{background:var(--deep)}.toggle{display:none;background:var(--blush);border:0;padding:9px 13px;border-radius:8px;color:var(--wine)}
.hero{min-height:670px;position:relative;display:grid;align-items:center;overflow:hidden;background:linear-gradient(105deg,#fffaf8 5%,#f6dbe3 100%)}.hero:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 10%,#fff 0,transparent 55%);pointer-events:none}.hero-layout{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px}.hero-copy{padding:75px 0 90px;z-index:2}.overline{text-transform:uppercase;color:var(--rose);font-weight:800;font-size:11px;letter-spacing:.23em}.hero h1{font-size:clamp(66px,9vw,142px);line-height:.82;color:var(--wine);letter-spacing:-.09em;margin:28px 0;font-weight:800}.hero h1 span{display:block;margin-left:9%;}.hero-tag{font:italic clamp(24px,3vw,41px) 'Playfair Display',serif;color:var(--rose);margin:28px 0}.hero-copy p{max-width:450px;color:#70535e}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.ghost{border:1px solid #a97184;padding:12px 22px;border-radius:40px;color:var(--wine);font-weight:700}.hero-visual{height:670px;position:relative;align-self:stretch}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center top;mask-image:linear-gradient(to right,transparent 0%,black 13%);border-radius:0 0 0 140px}.hero-visual:after{content:'CUERNAVACA · MORELOS';position:absolute;right:-18px;bottom:70px;background:var(--wine);color:white;padding:12px 24px;letter-spacing:.22em;font-size:10px;transform:rotate(-90deg);transform-origin:right bottom}.ticker{background:var(--wine);color:white;overflow:hidden;padding:14px 0}.ticker div{white-space:nowrap;letter-spacing:.19em;font-size:11px;text-align:center}.section{padding:100px 0}.section h2{font:600 clamp(36px,5vw,67px)/1.1 'Playfair Display',serif;letter-spacing:-.035em;margin:14px 0 24px;color:var(--wine)}.section p{color:var(--muted)}.intro{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center}.intro-photo{border-radius:180px 180px 14px 14px;overflow:hidden;aspect-ratio:4/5}.intro-photo img{height:100%;width:100%;object-fit:cover}.signature{font:italic 28px 'Playfair Display',serif;color:var(--rose)}.feature{background:var(--deep);color:white}.feature h2{color:#fff}.feature p{color:#e5cbd4}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.feature-list{display:grid;gap:0}.feature-item{padding:22px 0;border-bottom:1px solid #ffffff35;display:flex;gap:22px;align-items:start}.feature-item b{color:#eab3c4}.feature-item strong{font-size:20px}.timeline{border-left:1px solid var(--rose);margin:32px 0 0 13px;padding-left:34px}.event{position:relative;margin-bottom:29px}.event:before{content:'';position:absolute;left:-42px;top:9px;width:14px;height:14px;background:var(--rose);border:5px solid var(--cream);border-radius:50%}.event time{color:var(--rose);font-weight:800;font-size:12px}.event h3{margin:3px 0;font-size:20px}.gallery{background:#f2e6e6}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:32px}.photo{margin:0;position:relative;overflow:hidden;border-radius:12px;aspect-ratio:3/4;background:#e7cbd3}.photo:nth-child(1),.photo:nth-child(7){grid-column:span 2;aspect-ratio:1.4}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.photo:hover img{transform:scale(1.07)}.photo figcaption{position:absolute;bottom:0;left:0;right:0;color:#fff;font-size:11px;padding:32px 12px 12px;background:linear-gradient(transparent,#0008)}.topics{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.topic{padding:32px;background:white;border:1px solid var(--line);border-radius:12px}.topic b{font-size:12px;color:var(--rose)}.topic h3{font:600 26px 'Playfair Display',serif;color:var(--wine);margin:18px 0 8px}.topic p{font-size:14px}.contact{background:var(--blush)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}.form-panel{background:#fff;padding:34px;border-radius:16px;box-shadow:0 20px 60px #68112b12}.field{display:block;font-size:12px;font-weight:700;margin:15px 0 6px}.form-panel input,.form-panel select,.form-panel textarea{width:100%;border:1px solid #e6d4da;padding:13px;border-radius:7px;background:#fff;color:var(--ink)}.form-panel textarea{min-height:110px;resize:vertical}.form-panel button{margin-top:19px;width:100%}.notice{font-size:12px!important}.mapframe{width:100%;height:330px;border:0;border-radius:14px}.map-note{font-size:12px!important}.footer{background:#230914;color:#ead3db;padding:65px 0 25px}.footergrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:35px}.footer a{display:block;margin:8px 0}.footer small{display:block;margin-top:40px;border-top:1px solid #ffffff30;padding-top:20px}.blog-area{display:none;padding:75px 0}.blog-area .post-outer{background:white;border:1px solid var(--line);padding:25px;margin-bottom:22px;border-radius:12px}.blog-area img{height:auto}.reveal{opacity:0;transform:translateY(35px);transition:opacity .85s,transform .85s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.toggle{display:block}.navlinks{display:none;position:absolute;top:83px;left:0;right:0;background:white;padding:25px;flex-direction:column;align-items:stretch;box-shadow:0 20px 30px #0002}.navlinks.open{display:flex}.hero-layout{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(58px,8vw,90px)}.mosaic{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.wrap{width:calc(100% - 30px)}.section{padding:65px 0}.hero{min-height:0}.hero-layout,.intro,.feature-grid,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:45px 0 15px}.hero h1{font-size:clamp(65px,15vw,100px)}.hero-visual{height:410px}.hero-visual img{mask-image:none;border-radius:120px 120px 0 0;object-position:center 17%}.hero-visual:after{display:none}.mosaic{grid-template-columns:repeat(2,1fr)}.photo:nth-child(1),.photo:nth-child(7){grid-column:span 2}.topics{grid-template-columns:1fr}.footergrid{grid-template-columns:1fr}.gallery-head{display:block}.form-panel{padding:22px}.section h2{font-size:40px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
/* V2 / EDICION CUERNAVACA — art direction: editorial full-bleed, full-screen navigation */
:root{--wine:#741a31;--deep:#270d17;--rose:#c95778;--cream:#faf5ed;--line:#e6d5d6}
.header{position:fixed;top:0;left:0;right:0;height:86px;background:linear-gradient(#210810b8,#21081020);border:0;backdrop-filter:none;transition:background .35s}.header.scrolled{background:#2b0e1bed;backdrop-filter:blur(18px)}.header .logo{color:#fff}.header .logo small{color:#f9d7de}.toggle{display:block!important;background:#fff;color:var(--wine);border-radius:100px;padding:13px 22px;font-weight:800;letter-spacing:.08em;z-index:80;position:relative}.navlinks{position:fixed!important;inset:0!important;top:0!important;left:0!important;right:0!important;height:100dvh!important;max-height:none!important;background:var(--deep)!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;padding:clamp(25px,8vw,130px)!important;gap:8px!important;transform:translateY(-105%);opacity:0;visibility:hidden;transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .4s,visibility .4s;box-shadow:none!important;z-index:70;overflow:auto}.navlinks.open{transform:translateY(0);opacity:1;visibility:visible}.navlinks a{color:#fff!important;font:600 clamp(27px,5vw,65px)/1.12 'Playfair Display',serif;padding:7px 0}.navlinks a:hover{color:#f3a6ba!important}.navlinks .pill{border:0;background:none;padding:7px 0;border-radius:0}.hero{min-height:100svh;background:#290b17;display:flex;align-items:end}.hero:before{background:linear-gradient(90deg,#210913e8 0%,#21091399 45%,#21091320 100%);z-index:1}.hero-layout{width:100%;min-height:100svh;display:flex;align-items:end;position:relative}.hero-copy{padding:185px 0 95px;max-width:850px}.hero h1{color:#fff;font:800 clamp(76px,13vw,190px)/.77 'DM Sans',sans-serif;letter-spacing:-.095em;margin:25px 0}.hero h1 span{margin-left:0}.hero .overline{color:#ffbfd0}.hero-tag{color:#ffbdd0;font-size:clamp(27px,3.8vw,53px)}.hero-copy p{color:#f6e7e9;max-width:530px}.hero-visual{position:absolute;inset:0;height:100%;z-index:0}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:65% 22%;mask-image:none;border-radius:0}.hero-visual:after{display:none}.hero .pill{background:#f5e7e4;color:var(--deep)!important;border-color:#f5e7e4}.hero .ghost{color:white;border-color:#ffffff80}.ticker{padding:17px 0;background:#e8bdc7;color:#3b1020}.section{padding:clamp(75px,9vw,145px) 0}.intro{grid-template-columns:.95fr 1fr}.intro-photo{border-radius:4px;aspect-ratio:4/5}.feature{background:#2c101c}.feature-grid{grid-template-columns:1.05fr .95fr}.feature-item{border-bottom-color:#ffffff22}.gallery{background:#eee0e1}.mosaic{grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:10px}.photo{grid-column:span 3;aspect-ratio:3/4;border-radius:3px}.photo:nth-child(1){grid-column:span 6;grid-row:span 2;aspect-ratio:auto}.photo:nth-child(2),.photo:nth-child(7){grid-column:span 3;aspect-ratio:3/4}.photo:nth-child(5){grid-column:span 6;aspect-ratio:1.7}.photo:nth-child(8){grid-column:span 6;aspect-ratio:1.7}.topics{display:block;border-top:1px solid #d8bdc5}.topic{display:grid;grid-template-columns:100px 1fr 1.1fr 110px;align-items:center;gap:25px;background:transparent;border:0;border-bottom:1px solid #d8bdc5;border-radius:0;padding:35px 8px}.topic h3{margin:0;font-size:clamp(26px,3vw,42px)}.topic p{margin:0}.topic a{font-weight:800;color:var(--wine)}.contact{background:#e9d7d8}.form-panel{border-radius:3px}.form-step{display:none}.form-step.active{display:block;animation:rise .45s both}.form-progress{display:flex;gap:7px;margin:0 0 25px}.form-progress span{height:4px;flex:1;background:#ead8dc}.form-progress span.active{background:var(--wine)}.form-controls{display:flex;gap:10px;margin-top:20px}.form-controls button{margin:0}.form-controls .ghost{background:white}.contact .form-panel button{width:auto;flex:1}.form-panel .field{font-size:14px}.step-caption{color:var(--rose);font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.mapframe{filter:grayscale(.3)}
@media(max-width:900px){.hero-copy{padding:155px 0 75px}.hero h1{font-size:clamp(66px,12vw,125px)}.topic{grid-template-columns:65px 1fr}.topic p{grid-column:2}.topic a{grid-column:2}.mosaic{grid-template-columns:repeat(6,1fr)}.photo{grid-column:span 3}.photo:nth-child(1){grid-column:span 6;grid-row:span 1;aspect-ratio:1.6}.photo:nth-child(5),.photo:nth-child(8){grid-column:span 6}}
@media(max-width:700px){.header{height:72px}.hero{min-height:800px}.hero-layout{min-height:800px;display:flex!important}.hero-visual{order:initial!important}.hero-visual img{object-position:59% 15%;opacity:.75}.hero:before{background:linear-gradient(0deg,#210913f7 0%,#2109139a 42%,#21091320 100%)}.hero-copy{position:relative;width:100%;padding:380px 0 70px}.hero h1{font-size:clamp(65px,16vw,100px)}.hero-tag{font-size:29px}.hero .hero-actions a{width:auto}.navlinks{padding:95px 28px 45px!important}.navlinks a{font-size:34px}.topic{grid-template-columns:1fr;gap:5px}.topic p,.topic a{grid-column:1}.topic h3{margin:5px 0}.photo{grid-column:span 3}.footergrid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.navlinks,.form-step{animation:none;transition:none}}

/* Cloudflare Pages navigation and responsive additions */
.navlinks.open{z-index:40}.inner-hero{background:linear-gradient(125deg,#360c1c,#7e1c40);color:#fff;padding:115px 0 85px}.inner-hero h1{font:600 clamp(48px,8vw,96px)/1.05 'Playfair Display',serif;margin:15px 0}.inner-hero p{max-width:670px;color:#f6dce5}.inner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.inner-card{padding:26px;border:1px solid var(--line);border-radius:15px;background:white}.inner-card h2{font:600 26px 'Playfair Display',serif;color:var(--wine)}.inner-card p{color:var(--muted)}.inner-grid .photo{min-height:260px}.hero-copy,.hero-visual{min-width:0}@media(max-width:750px){.inner-grid{grid-template-columns:1fr}}


/* Responsive layout corrections — mobile release */
html,body{max-width:100%;overflow-x:clip}
.top{position:relative;z-index:2;white-space:normal;line-height:1.4;padding:9px 18px}
.header{top:0;width:100%;max-width:100vw}
.header .nav{min-width:0;gap:10px}
.header .logo{min-width:0;max-width:calc(100% - 112px);font-size:clamp(17px,4.8vw,23px);letter-spacing:-.045em;white-space:nowrap}
.header .logo small{font-size:9px;letter-spacing:.15em}
.header .toggle{flex:0 0 auto;min-width:0;white-space:nowrap;padding:10px 15px;border-radius:100px;font-size:13px}
.header .navlinks{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;max-width:100vw!important;box-sizing:border-box}
.hero,.hero-layout{width:100%;max-width:100%;min-width:0}
.hero-layout{isolation:isolate}
.hero-visual{z-index:-1;pointer-events:none}
.hero-copy{min-width:0;max-width:100%;overflow-wrap:break-word}
.hero h1{overflow-wrap:normal;word-break:normal;max-width:100%}
.hero-tag{max-width:100%;line-height:1.16}
.hero-actions{max-width:100%}
@media(max-width:700px){
 .top{font-size:9px;letter-spacing:.09em;text-align:center}
 .header{height:70px}
 .header .wrap{width:calc(100% - 32px)}
 .header .logo{font-size:clamp(16px,4.5vw,21px)}
 .header .logo small{font-size:8px;margin-top:5px}
 .header .toggle{font-size:12px;padding:10px 13px}
 .header .navlinks{padding:96px 24px 40px!important;justify-content:flex-start!important;gap:12px!important}
 .header .navlinks a{font-size:clamp(28px,8vw,38px);line-height:1.12}
 .hero{min-height:100svh;height:auto;align-items:stretch;overflow:hidden}
 .hero-layout{min-height:100svh;display:flex!important;align-items:flex-end!important;width:calc(100% - 36px);margin-inline:auto}
 .hero-visual{position:absolute;inset:0;left:calc((100vw - 100%) / -2);right:auto;width:100vw;height:100%;overflow:hidden}
 .hero-visual img{height:100%;width:100%;object-fit:cover;object-position:52% 20%;opacity:.85}
 .hero:before{background:linear-gradient(to bottom,rgba(31,7,19,.56) 0%,rgba(31,7,19,.10) 23%,rgba(31,7,19,.32) 48%,rgba(31,7,19,.94) 82%,#210913 100%)}
 .hero-copy{width:100%;max-width:100%;padding:clamp(300px,58svh,590px) 0 52px;position:relative;z-index:2}
 .hero .overline{font-size:10px;letter-spacing:.12em;line-height:1.5;display:block}
 .hero h1{font-size:clamp(55px,14vw,78px);line-height:.86;letter-spacing:-.075em;margin:20px 0 18px}
 .hero h1 span{margin-left:0}
 .hero-tag{font-size:clamp(23px,6vw,30px);margin:15px 0 18px}
 .hero-copy p{font-size:14px;line-height:1.65;margin:0}
 .hero-actions{gap:10px;margin-top:22px}
 .hero-actions a{font-size:12px;padding:11px 14px}
 .ticker div{white-space:normal;padding-inline:18px;line-height:1.8;font-size:9px}
 .section h2{overflow-wrap:anywhere}
 .wrap{max-width:calc(100% - 30px)}
 .splash-monogram{font-size:74px}
 .splash-name{font-size:11px;letter-spacing:.28em}
 .splash-in{width:calc(100% - 42px);max-width:420px}
}
@media(max-width:360px){.header .logo{font-size:15px}.header .toggle{font-size:11px;padding:9px 11px}.hero h1{font-size:53px}.hero-copy{padding-top:55svh}}


/* V3: mobile editorial cover, accessible contrast and reliable entrance */
.hero-copy.reveal{opacity:1;transform:none;animation:heroEnter .9s ease both;animation-delay:2.15s}
@keyframes heroEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:700px){
  html,body{max-width:100%;overflow-x:clip}
  .top{display:none}
  .header{height:74px;background:#2b0e1b!important;backdrop-filter:blur(12px)}
  .header .nav{gap:8px}
  .header .logo{font-size:clamp(17px,5vw,22px);letter-spacing:-.6px;white-space:nowrap}
  .header .logo small{font-size:9px;letter-spacing:.14em;margin-top:6px}
  .toggle{font-size:14px;padding:10px 15px;white-space:nowrap;letter-spacing:0}
  .hero{display:block!important;min-height:0!important;background:#330d20!important;overflow:hidden}
  .hero:before{display:none!important}
  .hero-layout{display:flex!important;flex-direction:column!important;min-height:0!important;width:100%!important;gap:0!important;align-items:stretch!important;margin:0!important}
  .hero-visual{order:0!important;position:relative!important;inset:auto!important;width:100%!important;height:clamp(390px,110vw,560px)!important;margin-top:74px!important;overflow:hidden!important;z-index:0!important}
  .hero-visual img{height:100%!important;width:100%!important;object-fit:cover!important;object-position:center 38%!important;opacity:1!important;filter:none!important;border-radius:0!important;mask-image:none!important}
  .hero-copy,.hero-copy.reveal{order:1!important;position:relative!important;z-index:2!important;width:100%!important;max-width:none!important;padding:35px 23px 50px!important;margin:0!important;background:#330d20!important;color:#fff!important;opacity:1!important;transform:none!important;animation:none!important}
  .hero .overline{color:#ffd3df!important;font-size:11px!important;letter-spacing:.14em!important;line-height:1.5!important}
  .hero h1{color:#fff!important;font-size:clamp(57px,14.2vw,91px)!important;line-height:.86!important;letter-spacing:-.075em!important;margin:18px 0 23px!important;text-shadow:none!important;overflow-wrap:normal!important}
  .hero h1 span{margin-left:0!important}
  .hero .hero-tag{color:#ffd0de!important;font-size:clamp(25px,7vw,37px)!important;line-height:1.22!important;margin:0 0 20px!important;opacity:1!important}
  .hero-copy p{color:#fff4f6!important;font-size:16px!important;line-height:1.7!important;margin:0!important;opacity:1!important}
  .hero-actions{margin-top:25px!important;gap:11px!important}
  .hero-actions a{font-size:13px!important;padding:12px 16px!important;min-height:46px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}
  .hero .pill{background:#fff1f4!important;color:#390c1c!important;border-color:#fff1f4!important}
  .hero .ghost{color:#fff!important;border-color:#ffcfdb!important}
  .navlinks{height:100dvh!important;padding-top:105px!important}
}
@media(prefers-reduced-motion:reduce){.hero-copy.reveal{animation:none!important;opacity:1!important;transform:none!important}}
/* V4 desktop: guaranteed readable hero, without delayed invisible text */
@media(min-width:701px){
 .hero-copy,.hero-copy.reveal,.hero-copy.reveal.visible{opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;position:relative;z-index:3!important;filter:none!important}
 .hero:before{content:"";display:block!important;position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,5,14,.96) 0%,rgba(25,5,14,.91) 24%,rgba(25,5,14,.76) 47%,rgba(25,5,14,.30) 76%,rgba(25,5,14,.15) 100%)!important;z-index:1!important}
 .hero h1,.hero-copy h1{color:#ffffff!important;opacity:1!important;text-shadow:0 3px 22px rgba(0,0,0,.38)!important}
 .hero .overline{color:#ffe1ea!important;opacity:1!important}
 .hero .hero-tag{color:#ffd0df!important;opacity:1!important;text-shadow:0 2px 10px rgba(0,0,0,.4)}
 .hero-copy p{color:#ffffff!important;opacity:1!important;text-shadow:0 2px 9px rgba(0,0,0,.5)}
 .hero-copy{padding-top:155px;padding-bottom:95px}
}


/* V5: remove overlay stacking failure. Solid editorial panel on desktop. */
@media(min-width:701px){
 .hero{position:relative!important;background:#2a0b19!important;min-height:760px!important;isolation:isolate!important;overflow:hidden!important}
 .hero::before,.hero::after{display:none!important;content:none!important}
 .hero-layout{position:relative!important;z-index:1!important;isolation:isolate!important;min-height:760px!important;width:100%!important;max-width:none!important;display:grid!important;grid-template-columns:53% 47%!important;align-items:stretch!important;margin:0!important}
 .hero-visual{position:relative!important;inset:auto!important;grid-column:2!important;grid-row:1!important;width:100%!important;height:100%!important;min-height:760px!important;z-index:0!important;pointer-events:none!important;overflow:hidden!important}
 .hero-visual img{width:100%!important;height:100%!important;position:absolute!important;inset:0!important;object-fit:cover!important;object-position:50% 22%!important;opacity:1!important;filter:none!important;mask-image:none!important;border-radius:0!important}
 .hero-copy,.hero-copy.reveal,.hero-copy.reveal.visible{grid-column:1!important;grid-row:1!important;z-index:2!important;position:relative!important;background:#2a0b19!important;color:#fff!important;opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important;animation:none!important;align-self:stretch!important;max-width:none!important;width:100%!important;padding:175px clamp(26px,4.3vw,82px) 85px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important}
 .hero h1,.hero-copy h1{font-family:'DM Sans',sans-serif!important;font-size:clamp(62px,7.2vw,124px)!important;line-height:.88!important;letter-spacing:-.075em!important;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important;text-shadow:none!important;max-width:100%!important;margin:25px 0 28px!important}
 .hero h1 span{display:block!important;margin-left:0!important}
 .hero .overline{color:#ffd2df!important;-webkit-text-fill-color:#ffd2df!important;opacity:1!important}
 .hero .hero-tag{font-size:clamp(25px,3vw,43px)!important;color:#ffd2df!important;-webkit-text-fill-color:#ffd2df!important;opacity:1!important;line-height:1.18!important;margin:0 0 22px!important}
 .hero-copy p{font-size:clamp(15px,1.3vw,18px)!important;line-height:1.65!important;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:1!important;max-width:530px!important}
 .hero-actions{position:relative!important;z-index:3!important;margin-top:28px!important}
 .hero-actions .pill{background:#fff!important;color:#2a0b19!important;-webkit-text-fill-color:#2a0b19!important}
 .hero-actions .ghost{color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#f3b6c7!important}
}
@media(min-width:701px) and (max-width:1050px){.hero-layout{grid-template-columns:57% 43%!important}.hero h1{font-size:clamp(58px,7.6vw,90px)!important}.hero-copy{padding-inline:32px!important}}
@media(max-width:700px){.hero-copy,.hero-copy.reveal,.hero-copy.reveal.visible{opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important}.hero::before{display:none!important}.hero-layout{isolation:isolate!important}.hero-visual{z-index:0!important}.hero-copy{z-index:2!important}}

/* V6 definitive desktop composition: no overlay, no cropped headline */
@media (min-width:701px){
 .header{position:sticky!important;top:0!important;height:83px!important;z-index:50!important}
 .hero{min-height:680px!important;height:auto!important;overflow:visible!important;background:#300d1e!important}
 .hero-layout{display:grid!important;grid-template-columns:minmax(0,52%) minmax(0,48%)!important;min-height:680px!important;height:auto!important;align-items:stretch!important;max-width:none!important;width:100%!important;margin:0!important}
 .hero-copy,.hero-copy.reveal,.hero-copy.reveal.visible{grid-column:1!important;grid-row:1!important;min-width:0!important;align-self:stretch!important;justify-content:center!important;position:relative!important;padding:68px clamp(28px,4.3vw,76px) 75px!important;margin:0!important;background:#300d1e!important;opacity:1!important;visibility:visible!important;transform:none!important;animation:none!important;overflow:visible!important}
 .hero h1,.hero-copy h1{font-size:clamp(58px,6.4vw,103px)!important;line-height:.94!important;letter-spacing:-.065em!important;margin:18px 0 28px!important;max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important;white-space:normal!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
 .hero h1 span{display:block!important;margin-left:0!important}
 .hero .hero-tag{font-size:clamp(24px,2.6vw,37px)!important;line-height:1.23!important;margin-bottom:20px!important;color:#ffd3df!important;-webkit-text-fill-color:#ffd3df!important}
 .hero-copy p{font-size:clamp(15px,1.3vw,18px)!important;max-width:480px!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
 .hero-visual{grid-column:2!important;grid-row:1!important;position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:680px!important;overflow:hidden!important}
 .hero-visual img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:51% 32%!important;opacity:1!important;filter:none!important;mask-image:none!important}
 .hero::before,.hero::after{display:none!important}
}
@media (min-width:701px) and (max-width:1020px){.hero-layout{grid-template-columns:55% 45%!important}.hero h1{font-size:clamp(54px,6.1vw,75px)!important}.hero-copy{padding-inline:28px!important}}
@media (max-width:700px){.hero{overflow:hidden!important}.hero-copy,.hero-copy.reveal,.hero-copy.reveal.visible{background:#330d20!important;opacity:1!important;visibility:visible!important}.hero h1{color:#fff!important;-webkit-text-fill-color:#fff!important}.hero .hero-tag{color:#ffd3df!important;-webkit-text-fill-color:#ffd3df!important}}

/* V7: mobile editorial sections, no narrow two-column content */
@media (max-width: 700px) {
  html,body {max-width:100%;overflow-x:clip;}
  .section {padding:64px 0!important;}
  .section .wrap {width:calc(100% - 40px)!important;max-width:100%!important;margin-inline:auto!important;}
  .intro,.feature-grid {display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;grid-template-columns:none!important;}
  .intro > *, .feature-grid > * {width:100%!important;min-width:0!important;max-width:100%!important;}
  .intro-photo {width:100%!important;aspect-ratio:5/4!important;margin-bottom:32px!important;border-radius:8px!important;}
  .intro-photo img {object-position:center 28%!important;}
  .intro .signature {display:block!important;margin:28px 0 20px!important;line-height:1.35!important;font-size:clamp(27px,8vw,38px)!important;}
  .intro .ghost {display:inline-flex!important;align-items:center!important;justify-content:center!important;max-width:100%!important;white-space:normal!important;text-align:center!important;margin-top:0!important;padding:14px 20px!important;line-height:1.4!important;}
  .intro h2,.feature h2 {font-size:clamp(35px,10vw,52px)!important;line-height:1.12!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;letter-spacing:-.035em!important;}
  .intro p,.feature p {font-size:16px!important;line-height:1.75!important;overflow-wrap:break-word!important;}
  .feature-grid > :first-child {padding-bottom:34px!important;border-bottom:1px solid #ffffff33!important;}
  .feature-list {display:block!important;width:100%!important;margin-top:12px!important;}
  .feature-item {display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;gap:14px!important;padding:23px 0!important;align-items:start!important;}
  .feature-item > div {min-width:0!important;}
  .feature-item strong {display:block!important;font-size:19px!important;line-height:1.35!important;overflow-wrap:normal!important;word-break:normal!important;}
  .feature-item p {margin:10px 0 0!important;font-size:15px!important;line-height:1.6!important;}
  .feature .pill {display:inline-flex!important;max-width:100%!important;white-space:normal!important;line-height:1.35!important;padding:15px 21px!important;}
  .reveal {max-width:100%;}
}
