/* Editorial direction: the approved black, gold and ivory media kits. */
:root{--ochre:#8b601b;--paper:#f5f1e8;--ease:cubic-bezier(.22,.61,.36,1)}
.header{height:110px;background:linear-gradient(#090907bb,transparent);border-bottom-color:#ebc15d38}
.hero{min-height:900px;height:100svh;max-height:1100px;overflow:hidden;background:#0c0c0b}
.hero-art{object-position:center;opacity:1;filter:brightness(.85);transform:scale(1.05) translate(var(--mx,0px),var(--my,0px))}
.hero:before{background:linear-gradient(90deg,#0c0c0bf5 0%,#0c0c0bd9 29%,#0c0c0b30 68%),linear-gradient(0deg,#0c0c0b 0%,transparent 30%)}
.hero-content{padding-top:clamp(190px,23vh,270px);z-index:3;pointer-events:none}
.hero-editorial{max-width:56%;pointer-events:auto}
.hero h1{font-size:clamp(3.6rem,5.6vw,6.25rem);line-height:1.09;letter-spacing:-.045em;max-width:720px;margin-bottom:30px}
.hero h1 em{font-style:normal;font-weight:600;background:linear-gradient(110deg,#fff0c7,#ebc15d 48%,#b9842d);background-clip:text;color:transparent}
.hero-copy{font-size:1.15rem;max-width:450px;color:#ded7c9;line-height:1.7}
.hero .actions{gap:22px;align-items:start;flex-direction:column}
.hero-couple{position:absolute;z-index:1;right:1%;top:135px;bottom:70px;width:50%;margin:0;display:flex;justify-content:center;align-items:end;pointer-events:none}
.hero-couple img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 15px 30px #0008);transform:translate(calc(var(--mx,0px) * -.35),calc(var(--my,0px) * -.35));transition:transform 1.3s var(--ease);mask-image:linear-gradient(#000 0%,#000 72%,transparent 98%)}
.hero-couple figcaption{position:absolute;bottom:34px;right:12%;color:var(--gold);font-size:.8rem;letter-spacing:.18em;text-align:center}
.hero-couple figcaption span{display:block;color:#d0c8b8;font-size:.875rem;letter-spacing:0;margin-top:7px}
.hero-bottom{z-index:4;border-top:1px solid #ebc15d38;padding-top:23px;bottom:28px;font-size:.75rem}
.city-chapter{background:#0c0c0b;padding:0 0 110px}
.city-panorama{width:100%;overflow:hidden}
.city-panorama img{display:block;width:100%;height:auto;object-fit:contain}
.city-editorial{text-align:center;max-width:930px;padding-top:52px}
.city-editorial h2{font-size:clamp(3rem,5.3vw,5.5rem);line-height:1.11;margin-bottom:30px}
.city-editorial h2 em{font-style:normal;font-weight:600}
.city-editorial>p:not(.eyebrow){max-width:590px;margin:0 auto 30px;color:var(--muted);font-size:1.15rem;line-height:1.8}
@media(min-width:1700px){.hero-couple{right:4%;width:48%}.hero-editorial{max-width:57%}}
@media(max-width:1000px){.hero{min-height:850px}.hero h1{font-size:clamp(3rem,5.8vw,5rem)}.hero-couple{right:-3%;width:55%;top:210px}.hero-editorial{max-width:55%}.hero .eyebrow{font-size:.75rem;letter-spacing:.14em}.hero-copy{font-size:1.05rem}.hero-content{padding-top:185px}}
@media(max-width:700px){.header{height:84px}.hero{min-height:0;height:auto;max-height:none;display:flex;flex-direction:column}.hero-art{opacity:1;object-position:58% center}.hero:before{background:linear-gradient(0deg,#0c0c0b,transparent 55%),linear-gradient(90deg,#0c0c0bd9,#0c0c0b33)}.hero-content{padding-top:135px;padding-bottom:0}.hero-editorial{max-width:none}.hero h1{font-size:clamp(3rem,10.7vw,4.8rem);line-height:1.1;letter-spacing:-.04em}.hero-copy{max-width:360px;font-size:1.04rem}.desktop-break{display:none}.hero .actions{gap:14px}.hero-couple{position:relative;right:auto;top:auto;bottom:auto;width:96%;height:auto;aspect-ratio:1/.98;align-self:center;margin-top:30px;overflow:hidden}.hero-couple img{position:absolute;width:100%;height:auto;max-height:none;top:0;object-fit:contain;mask-image:linear-gradient(#000 0%,#000 38%,transparent 71%)}.hero-couple figcaption{bottom:20px;right:0;width:100%;font-size:.75rem}.hero-bottom{position:relative;left:auto;bottom:auto;align-self:center;margin-top:0;padding:24px 0 28px;gap:22px}.hero-bottom>a{margin-top:4px}.city-chapter{padding-bottom:70px}.city-editorial{padding-top:28px}.city-editorial h2{font-size:2.9rem}.city-editorial>p:not(.eyebrow){font-size:1.05rem}.city-editorial .eyebrow{font-size:.75rem;letter-spacing:.16em}}
@media(prefers-reduced-motion:reduce){.hero-art,.hero-couple img{transform:none}}

/* The same type families and weights as the approved presentations. */
@font-face{font-family:Serif;src:url('/fonts/serif-semibold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Serif;src:url('/fonts/serif-italic.ttf') format('truetype');font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:Sans;src:url('/fonts/sans-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
body{font-size:18px;line-height:1.7}
em{font-style:normal;font-weight:600}
h2{font-weight:600;line-height:1.12;letter-spacing:-.045em}
.section{padding-block:125px}
.eyebrow{font-size:.875rem;letter-spacing:.19em}
.button{padding:18px 26px;font-size:1rem;border-color:#e4bd6c}
.gold{background:linear-gradient(110deg,#f5daa0,#ebc15d 50%,#c99a43);box-shadow:inset 0 1px #fff4}
.text-link{font-size:1rem;padding-bottom:10px}
.header nav{font-size:.95rem;gap:28px}
.nav-cta{font-size:.9rem}
.intro{background:var(--paper);color:var(--ink);position:relative}
.intro .eyebrow,.intro em,.intro .text-link{color:var(--ochre)}
.intro-grid{grid-template-columns:1.2fr 1fr;gap:9%;align-items:center}
.intro h2{font-size:clamp(2.7rem,4.5vw,4.65rem);line-height:1.15}
.intro p:not(.eyebrow){color:#5c5b55;font-size:1.1rem;line-height:1.85}
.intro-signature{display:flex;align-items:center;gap:35px;border-top:1px solid #d5ccb9;margin-top:60px;padding-top:28px}
.intro-signature>span{font-family:Serif,Georgia,serif;font-weight:600;font-style:italic;color:var(--ochre);font-size:2rem;white-space:nowrap}
.intro-signature p{margin:0!important;font-size:.75rem!important;letter-spacing:.18em}
.masters{background:linear-gradient(90deg,#090908ee,#090908bf),url('/assets/hero.webp') center/cover;border-top:0;border-bottom:1px solid #756136}
.section-heading{margin-bottom:48px;align-items:center}
.section-heading h2{font-size:clamp(3rem,5vw,5.2rem)}
.section-heading>p{font-size:1.1rem;line-height:1.8}
.masters .section-heading{margin-bottom:48px}
.masters h2 em{font-size:1.35em;line-height:1;color:#ebc15d}
.masters .section-heading>p{max-width:330px;font-family:Serif,Georgia,serif;font-size:1.8rem;line-height:1.4;color:#e2d9c8}
.demo-note{font-size:.875rem;line-height:1.65;max-width:850px;padding-left:15px;color:#bfb397;margin-bottom:35px}
.master-grid{gap:26px;perspective:1200px}
.master-card{min-height:415px;padding:42px 28px 28px;border:1px solid #92753e;background:linear-gradient(150deg,#2a241999,#090908ee 55%,#32251570);box-shadow:inset 0 0 0 6px #07070666,0 25px 55px #0004;isolation:isolate;transition:transform .45s var(--ease),border-color .35s,box-shadow .35s;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));will-change:auto}
.master-card:before{content:'';position:absolute;inset:7px;border:1px solid #f3cc6720;pointer-events:none;z-index:-1}
.master-card:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--px,50%) var(--py,0%),#ebc15d18,transparent 60%);pointer-events:none;z-index:-1}
.master-card:hover{transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(-5px);border-color:#f3cc67;box-shadow:0 30px 65px #0008}
.master-card .eyebrow{font-size:.75rem;letter-spacing:.18em;margin-bottom:32px}
.master-card h3{font-size:clamp(2.1rem,3.2vw,3.6rem);line-height:1.16;margin:0 0 20px}
.master-card h3 strong{font-style:normal;font-weight:600;color:#edcf8d}
.master-card>span{font-size:1rem}
.master-card .card-link{display:flex;width:100%;justify-content:space-between;align-items:center;border-top:1px solid #8f703f77;margin-top:auto;padding-top:24px;color:#e7d5b0;font-size:.875rem}
.master-card .card-link b{font-size:1.5rem;font-weight:400}
.platinum{background:var(--paper);color:var(--ink)}
.platinum .eyebrow,.platinum em{color:var(--ochre)}
.platinum .section-heading>p,.platinum .demo-note{color:#625a49}
.platinum-grid{gap:0;border-top:1px solid #b6a589;border-bottom:1px solid #b6a589}
.platinum-grid>a{position:relative;padding:45px 30px;min-height:225px;display:flex;flex-direction:column;justify-content:center;background:transparent;transition:background .35s}
.platinum-grid>a:hover{background:#eae2d3}
.platinum-grid>a h3{font-size:clamp(1.7rem,2.5vw,2.7rem);margin:24px 0}
.mini-label{font-size:.75rem;color:#75664f;letter-spacing:.15em}
.platinum-link{font-size:.95rem;color:var(--ochre)}
#destaques{padding-top:125px;padding-bottom:125px}
.brands-grid{grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.brand-card{padding:32px 20px 32px 0;border:0;border-bottom:1px solid var(--line);background:none;min-height:140px;transition:background .3s,padding .3s}
.brand-card:hover{background:#ebc15d06;padding-left:16px}
.brand-card h3{font-size:1.9rem;margin:0 0 10px;line-height:1.2}
.brand-card>span:not(.sr-only){font-size:.95rem;color:#beb6a8}
.brand-card>b{right:25px;bottom:28px;font-size:1.2rem;color:var(--gold)}
.experience{min-height:760px}
.experience>img{object-position:center}
.experience:before{background:linear-gradient(90deg,#090908ee,#09090885 42%,#09090805 76%),linear-gradient(0deg,#0c0c0b55,transparent 25%)}
.experience-copy h2{font-size:clamp(3rem,5.6vw,5.6rem);max-width:600px;line-height:1.14}
.experience-copy h2 em{color:#eed08e}
.experience-copy>p:not(.eyebrow){font-size:1.15rem;max-width:420px;line-height:1.8;color:#ded5c6}
.gallery-preview{width:100%;padding-inline:6%;background:var(--paper);color:var(--ink)}
.gallery-preview .eyebrow,.gallery-preview em,.gallery-preview .text-link{color:var(--ochre)}
.gallery-preview .gallery-grid{grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:28px 35px}
.gallery-preview .photo-card:first-child{grid-row:1/3}
.gallery-preview .photo-card img{height:240px;aspect-ratio:auto;object-position:center 30%;filter:none}
.gallery-preview .photo-card:first-child img{height:calc(100% - 66px);min-height:430px;object-position:43% center}
.gallery-preview .photo-card{color:var(--ink)}
.gallery-preview .photo-card>span{border-color:#c9bda6;margin-top:8px;font-size:.95rem;line-height:1.35}
.gallery-preview .photo-card b{color:var(--ochre)}
.films{background:#12110e;border-top:1px solid #50432b88;border-bottom:1px solid #50432b88}
.video-grid{gap:35px}
.video-cover{height:440px;border:1px solid #6d593a;padding:8px;background:#1c1710}
.video-cover>img{filter:brightness(.9);object-position:center 28%}
.play{height:70px;width:70px;background:#0c0c0b99;color:#f5d385;border-color:#e6c173;transition:background .3s,scale .3s}
.video-card:hover .play{scale:1.08;background:#3e301aaa}
.video-card .eyebrow{font-size:.75rem;color:#c6ac79}
.video-card h3{font-size:1.8rem}
.video-link{font-size:.95rem}
.contact{background:radial-gradient(ellipse at center bottom,#69491944,transparent 65%),#0c0c0b;border-top:0}
.contact:before{display:none}
.contact-seal{margin:0 auto 42px;width:180px;height:auto}
.contact h2{font-size:clamp(2.8rem,4.8vw,4.8rem);line-height:1.15}
.contact .wrap>p:not(.eyebrow){font-size:1.1rem;line-height:1.8}
.contact-details{font-size:.8rem;letter-spacing:.1em}
.footer{font-size:.95rem;padding-block:42px}
.footer .brand img{height:80px;width:88px}.footer small{font-size:.8rem}.footer>div>a{font-size:.875rem}

/* The archive, history and menu continue the same editorial rhythm. */
.inner-page .header{background:#0c0c0b}
.page-heading{width:100%;max-width:none;background:var(--paper);color:var(--ink);padding:55px 6% 100px}
.page-heading .eyebrow,.page-heading em{color:var(--ochre)}
.back-link{color:#72644c;font-size:.95rem;margin-bottom:65px}
.page-heading h1{font-size:clamp(3.3rem,6.1vw,6.2rem);line-height:1.12;max-width:1200px}
.page-heading .lead{font-size:1.2rem;line-height:1.8;color:#5c5b55;max-width:740px}
.story-grid{padding-top:110px;align-items:center}
.story-photo{background:radial-gradient(ellipse at 50% 30%,#6e4f274f,transparent 70%);border-bottom:1px solid #a27e39}
.story-grid .couple{max-height:770px;object-fit:contain;object-position:bottom;mask-image:linear-gradient(#000 75%,transparent)}
.story-grid h2{font-size:clamp(2.5rem,3.9vw,4rem);line-height:1.17}
.story-grid p:not(.eyebrow){font-size:1.1rem;line-height:1.8}
.timeline a{padding:35px 0}.timeline strong{font-weight:600;font-size:4.3rem}.timeline span{font-size:1.05rem}
.edition-list{padding-top:80px;gap:32px}
.edition-feature{min-height:560px;border:1px solid #977e50}
.edition-feature:before{background:linear-gradient(90deg,#000d,#0003),linear-gradient(0deg,#0c0c0b88,transparent)}
.edition-feature>div{padding:65px}
.edition-feature h2,.edition-simple h2{font-weight:600}
.edition-simple{border:0;border-top:1px solid #8c6e3e;border-bottom:1px solid #8c6e3e;background:linear-gradient(135deg,#20190e80,#0c0c0b);padding:50px;transition:background .4s,transform .4s}
.edition-simple:hover{transform:translateY(-5px);background:#261e11}
.archive-gallery{padding-top:85px}
.archive-gallery .gallery-grid{grid-template-columns:repeat(3,1fr);gap:40px 26px}
.archive-gallery .photo-card img{aspect-ratio:4/5;filter:none;object-position:center 27%}
.archive-gallery .photo-card>span{font-size:.95rem;line-height:1.4}
.archive-external{margin-top:85px;min-height:520px}.archive-external h2{font-size:clamp(2.5rem,4vw,4rem)}
.experience-portrait img{width:100%;height:auto;max-height:760px;object-fit:cover}
.experience-facts{padding-top:90px;padding-bottom:90px}
.experience-facts .eyebrow{font-size:.875rem}.experience-facts p:not(.eyebrow){font-size:1.05rem}
.menu-layout{grid-template-columns:.85fr 1.3fr;gap:10%;align-items:start}
.menu-layout>div:first-child{position:sticky;top:55px}
.menu-layout h2{font-size:clamp(3rem,4.5vw,4.7rem);line-height:1.16}
.menu-layout .eyebrow,.menu-layout em,.menu-highlight strong{color:var(--ochre)}
.menu-group summary{padding:26px 0;font-size:1.13rem;min-height:78px}
.menu-group li{font-size:1.05rem}.menu-number{font-size:.875rem;min-width:24px}
.prose{padding-top:35px}.prose h2{font-size:2.3rem}.prose p{font-size:1.05rem}
dialog{padding:24px;border-color:#ad8c49;background:#0c0c0b;box-shadow:0 30px 100px #0008}
.dialog-top p{font-family:Serif,Georgia,serif;font-size:1.3rem;line-height:1.3}.dialog-bottom{font-size:.95rem}
.close-dialog,#previous-photo,#next-photo{border-color:#ad8c49;min-width:46px;height:46px}

/* Progressive motion: content remains available without JavaScript. */
.reveal-ready{opacity:0;translate:0 28px;transition:opacity .85s var(--ease),translate .85s var(--ease)}
.reveal-ready.is-visible{opacity:1;translate:0 0}
.scroll-progress{position:fixed;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,#a37630,#f3cc67);transform-origin:left;transform:scaleX(0);z-index:80;pointer-events:none}
@media(max-width:1100px){.header nav{gap:17px;font-size:.875rem}.header .brand>span{display:none}.intro-grid{grid-template-columns:1fr 1fr;gap:6%}.master-card{min-height:380px;padding-inline:22px}.master-card h3{font-size:2.55rem}.video-cover{height:360px}}
@media(max-width:700px){.header .brand>span{display:block}.header nav{font-size:1rem}.section{padding-block:75px}.eyebrow{font-size:.8rem;letter-spacing:.14em}.intro-grid{grid-template-columns:1fr;gap:15px}.intro h2{font-size:2.85rem}.intro p:not(.eyebrow){font-size:1.05rem}.intro-signature{flex-direction:column;align-items:start;gap:14px;margin-top:35px}.intro-signature>span{font-size:1.85rem}.intro-signature p{font-size:.7rem!important}.section-heading{gap:25px;margin-bottom:35px}.section-heading h2{font-size:3rem}.section-heading>p{font-size:1.05rem}.masters .section-heading>p{font-size:1.5rem}.master-grid{gap:25px}.master-card{min-height:360px;padding:36px 26px 26px}.master-card h3{font-size:3rem}.master-card .eyebrow{font-size:.75rem}.master-card .card-link{margin-top:28px}.demo-note{font-size:.8rem}.platinum-grid>a{min-height:185px;padding:32px 10px}.platinum-grid>a h3{font-size:2.25rem;margin:16px 0}#destaques{padding-block:75px}.brands-grid{grid-template-columns:1fr 1fr}.brand-card{min-height:150px;padding:28px 20px 28px 0}.brand-card h3{font-size:1.6rem}.brand-card>b{right:12px;bottom:12px}.brand-card>span:not(.sr-only){font-size:.875rem}.experience{min-height:640px}.experience>img{object-position:65% center}.experience:before{background:linear-gradient(90deg,#090908e6,#09090870),linear-gradient(0deg,#09090899,transparent)}.experience-copy{padding-block:75px}.experience-copy h2{font-size:3.15rem}.experience-copy>p:not(.eyebrow){font-size:1.05rem}.experience .button{font-size:.9rem;gap:15px}.gallery-preview .gallery-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:26px}.gallery-preview .photo-card:first-child{grid-row:auto}.gallery-preview .photo-card img,.gallery-preview .photo-card:first-child img{height:auto;min-height:0;aspect-ratio:4/3;object-position:center}.gallery-preview .photo-card:nth-child(3){display:block}.gallery-preview .photo-card>span{font-size:.9rem}.video-cover{height:440px}.video-grid{gap:40px}.video-card h3{font-size:1.85rem}.contact h2{font-size:2.65rem}.contact-seal{width:150px;margin-bottom:35px}.contact .wrap>p:not(.eyebrow){font-size:1.05rem}.contact-details{font-size:.8rem}.footer{padding-block:38px}.page-heading{padding:35px 6% 65px}.back-link{margin-bottom:45px}.page-heading h1{font-size:3.05rem}.page-heading .lead{font-size:1.06rem}.story-grid{grid-template-columns:1fr;padding-top:55px;gap:40px}.story-grid .couple{max-height:560px}.story-grid h2{font-size:2.7rem}.story-grid p:not(.eyebrow){font-size:1.05rem}.timeline strong{font-size:3rem}.timeline span{font-size:.95rem}.timeline a{gap:24px;padding-block:28px}.edition-list{padding-top:40px;gap:22px}.edition-feature{min-height:450px}.edition-feature>div{padding:38px 28px}.edition-simple{padding:32px}.archive-gallery{padding-top:45px}.archive-gallery .gallery-grid{grid-template-columns:1fr;gap:32px}.archive-gallery .photo-card img{aspect-ratio:4/3}.archive-external{margin-top:40px}.archive-external h2{font-size:2.5rem}.experience-facts{padding-top:50px;padding-bottom:55px}.menu-layout{grid-template-columns:1fr;gap:35px}.menu-layout>div:first-child{position:static}.menu-layout h2{font-size:3rem}.menu-group summary{font-size:1.05rem;padding-block:23px}.menu-group li{font-size:1rem}.prose{padding-top:20px}.prose h2{font-size:2rem}.dialog-top p{font-size:1.05rem}dialog{padding:15px}.dialog-bottom{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;translate:none}.master-card,.master-card:hover,.edition-simple:hover{transform:none}.scroll-progress{display:none}}
@media(max-width:360px){.hero h1{font-size:2.45rem}.hero .eyebrow{font-size:.72rem}.hero-couple{margin-top:24px}.header .brand>span{font-size:.65rem}.header .brand small{font-size:.58rem}}

/* Reserve real space for the hero footer, including on wide, short screens. */
@media(min-width:701px){
  .hero{display:flex;flex-direction:column;height:auto;min-height:clamp(900px,100svh,1100px);max-height:none}
  .hero-content{flex:1 0 auto;padding-bottom:48px}
  .hero-bottom{position:relative;left:auto;bottom:auto;flex:0 0 auto;margin-top:auto;padding-bottom:28px;align-items:center}
  .hero-couple{bottom:125px}
  .hero-couple figcaption{bottom:15px}
}
