:root{--cream:#f2eeeb;--paper:#f8f5f0;--ink:#565a49;--line:#b8b7a8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:300 19px/1.6 'Newsreader',Georgia,serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{width:100%;height:auto;display:block}h1,h2,p,figure{margin:0}.site-header{height:90px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(20px,5vw,88px);border-bottom:1px solid #c9c5b8;position:relative}.site-header nav{display:flex;gap:clamp(18px,3vw,44px)}.nav-right{justify-content:flex-end}.site-header nav a,.eyebrow,.section-index,.text-link,.scroll-cue,figcaption,.invitation-content>p,footer,.photo-note,.tally-placeholder{font:12px/1.5 'Newsreader',Georgia,serif;letter-spacing:.14em}.site-header nav a:hover,.text-link:hover{opacity:.6}.nav-logo{width:clamp(105px,12vw,156px);display:block}.nav-logo img{width:100%}.menu-toggle,.mobile-nav{display:none}.invitation{min-height:calc(100svh - 90px);display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;position:relative;padding:80px 20px 115px}.invitation-content{transform:translateY(-2%)}.invitation-rule{display:flex;align-items:center;gap:15px;width:150px;color:#949782;position:absolute;top:11%}.invitation-rule span{height:1px;background:#b9b8a9;flex:1}.invitation-rule i{font:24px Georgia,serif}.invitation h1{font:400 clamp(70px,9.5vw,146px)/1.12 'Pinyon Script',cursive;margin-bottom:27px}.invitation-content>p{font-size:clamp(11px,1vw,14px);letter-spacing:.24em}.sprig{display:block;width:67px;margin:44px auto 0;color:#999d86;opacity:.8}.scroll-cue{position:absolute;bottom:35px;display:flex;align-items:center;flex-direction:column;gap:7px;font-size:10px}.scroll-cue span{font:24px Georgia,serif}.feeling,.reveal,.detail-section,.occasions{padding:100px clamp(24px,8vw,140px) 130px}.feeling{background:var(--paper)}.section-index{display:flex;align-items:center;gap:15px;color:#848676}.section-index span{height:1px;width:48px;background:#aaa997}.feeling-grid{max-width:1150px;margin:90px auto 0;display:grid;grid-template-columns:1fr .85fr;gap:10%;align-items:center}.feeling-copy{max-width:470px;padding-left:5%}h2,.page-intro h1,.faq-heading h1,.inquire-page h1{font:400 clamp(66px,7.5vw,114px)/1.04 'Pinyon Script',cursive}.feeling-copy p,.reveal-intro>p:last-child,.page-intro>p,.detail-copy p,.occasion-copy p,.closing>p,.faq-heading>p{font-size:clamp(19px,1.7vw,24px);line-height:1.55}.feeling-copy h2{margin-bottom:26px}.dot-trio,.intro-dots{color:#999d86;letter-spacing:.4em;margin-top:28px}.photo-frame{padding:12px;border:1px solid #aaa994;position:relative}.photo-frame:before{content:'';position:absolute;inset:5px;border:1px solid #c7c4b6;pointer-events:none}.gelato-frame{max-width:460px;justify-self:center;transform:rotate(.45deg)}.gelato-frame img{aspect-ratio:4/5;object-fit:cover}figcaption{position:absolute;right:0;bottom:-28px;font-size:10px}.reveal{text-align:center}.reveal-intro{max-width:700px;margin:75px auto 60px}.reveal h2{margin-bottom:12px}.eyebrow{display:block;margin-bottom:20px}.reveal-intro>p:last-child{max-width:620px;margin:auto}.vespa-frame{max-width:850px;margin:0 auto 70px}.vespa-frame img{aspect-ratio:1.72;object-fit:cover}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:9px}.page-intro,.faq-heading{text-align:center;padding:140px 24px 150px}.page-intro>p{max-width:680px;margin:30px auto 0}.page-intro .intro-dots{margin-top:35px}.detail-section{background:var(--paper)}.detail-layout{max-width:1200px;display:grid;grid-template-columns:1.05fr .9fr;gap:10%;align-items:center;margin:75px auto 0}.detail-collage{position:relative;min-height:690px}.seat-photo{position:absolute;width:57%;top:0;left:0}.seat-photo img{aspect-ratio:3/4;object-fit:cover}.emblem-photo{position:absolute;width:40%;top:13%;right:0}.emblem-photo img{aspect-ratio:3/4;object-fit:cover}.front-photo{position:absolute;width:43%;left:38%;bottom:0}.front-photo img{aspect-ratio:3/4;object-fit:cover}.detail-copy h2{margin-bottom:25px}.occasions{text-align:center}.occasions .section-index{text-align:left}.occasion-copy{max-width:770px;margin:70px auto 65px}.occasion-copy h2{margin-bottom:25px}.occasion-images{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;max-width:900px;margin:auto}.occasion-images figure:first-child{transform:rotate(-.6deg)}.occasion-images figure:last-child{transform:rotate(.5deg)}.occasion-images img{aspect-ratio:4/5;object-fit:cover}.occasion-images figure:last-child img{aspect-ratio:5/4}.photo-note{margin-top:65px;color:#898a7e;font-size:10px}.closing{text-align:center;padding:135px 24px 150px;background:var(--paper)}.closing h2{margin:28px 0 14px}.closing>p{margin:0 auto 35px}.faq-heading{padding-bottom:80px}.faq-heading>p{margin-top:25px}.faq-list{max-width:900px;margin:0 auto 140px;padding:0 25px}.faq-list details{border-top:1px solid #c5c3b7;padding:25px 5px}.faq-list details:last-child{border-bottom:1px solid #c5c3b7}.faq-list summary{font-size:25px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font:24px Georgia,serif}.faq-list details[open] summary:after{content:'−'}.faq-list details p{max-width:730px;padding:20px 20px 10px 0;font-size:20px;line-height:1.6}.inquire-page{min-height:75vh;background:var(--cream)}.inquire-page h1{margin:30px 0 10px}.tally-placeholder{max-width:650px;margin:70px auto 0;border:1px solid #c8c5b7;padding:65px 25px;color:#8b8c7c}.tally-placeholder small{display:block;margin-top:15px;font:16px 'Newsreader',serif;letter-spacing:normal}footer{padding:25px clamp(20px,5vw,90px);border-top:1px solid #c5c2b6;display:flex;justify-content:space-between;gap:15px;font-size:10px}@media(max-width:760px){.site-header{height:72px;grid-template-columns:1fr auto 1fr}.site-header .nav-left,.site-header .nav-right{display:none}.nav-logo{grid-column:2;width:120px}.menu-toggle{display:block;grid-column:3;justify-self:end;border:0;background:none;color:var(--ink);font:11px 'Newsreader',Georgia,serif;letter-spacing:.1em}.mobile-nav.open{display:flex}.site-header .mobile-nav{position:absolute;top:72px;left:0;right:0;background:var(--cream);padding:24px;flex-direction:column;border-bottom:1px solid #c5c2b6;z-index:10}.invitation{min-height:calc(90svh - 72px);padding:100px 22px 110px}.invitation h1{font-size:clamp(64px,13vw,100px)}.invitation-content>p{font-size:10px;letter-spacing:.13em}.sprig{width:56px}.feeling,.reveal,.detail-section,.occasions{padding:75px 25px 105px}.feeling-grid,.detail-layout{grid-template-columns:1fr;gap:45px;margin-top:55px}.feeling-copy{padding:0}.feeling-copy h2,.reveal h2,.detail-copy h2,.occasion-copy h2,.closing h2{font-size:75px}.gelato-frame{width:80%;margin:auto}.reveal-intro{margin:55px auto 45px}.vespa-frame{padding:8px}.vespa-frame img{aspect-ratio:1.25}.page-intro,.faq-heading{padding:105px 24px}.detail-collage{min-height:480px}.occasion-images{gap:30px;grid-template-columns:1fr}.occasion-images figure{width:80%;margin:auto}.occasion-images figure:last-child{width:85%}.closing{padding:105px 25px}footer{flex-wrap:wrap;justify-content:center;text-align:center;font-size:9px}.faq-list summary{font-size:22px}}

/* Concept 03 refinements */
.site-header{z-index:20;background:var(--cream)}
.site-header .nav-left,.site-header .nav-right{display:flex;align-items:center}
.site-header .mobile-nav{display:none}
.nav-logo{width:clamp(88px,9vw,120px)}
.invitation-content>p{font-size:clamp(15px,1.5vw,19px);letter-spacing:.13em;line-height:1.6;margin-top:8px}
.invitation h1{margin-bottom:22px}
.ornamental-label{justify-content:center;gap:14px;opacity:.85}
.ornamental-label span{width:70px}
.ornamental-label i{font:normal 20px/1 'Newsreader',serif;letter-spacing:.12em}
.dotted-photo{padding:7px;border:1px dotted #9b9d87}
.dotted-photo img{display:block}
.page-intro .intro-dots{font-size:17px;letter-spacing:.24em;margin-top:40px}
.tally-placeholder{max-width:760px;border:0;padding:0;margin:65px auto 0;letter-spacing:normal}
.tally-placeholder iframe{display:block;min-height:650px}
.form-fallback{font:16px 'Newsreader',serif;margin-top:16px;letter-spacing:normal}
.form-fallback a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){
 .site-header .nav-left,.site-header .nav-right{display:none}
 .site-header .mobile-nav{display:none}
 .site-header .mobile-nav.open{display:flex;z-index:50}
 .nav-logo{width:105px}
 .invitation-content>p{font-size:15px;letter-spacing:.07em;max-width:310px;margin:0 auto}
 .ornamental-label span{width:48px}
}

/* V4 — unified editorial type system: Newsreader + Pinyon Script only */
.site-header nav a,.eyebrow,.section-index,.text-link,.scroll-cue,figcaption,footer,.photo-note,.tally-placeholder{font-family:'Newsreader',Georgia,serif;font-weight:400;letter-spacing:.13em}
.site-header nav a{font-size:13px}
.invitation-content>p{font-family:'Newsreader',Georgia,serif;font-weight:400;font-size:clamp(16px,1.35vw,19px);letter-spacing:.12em;line-height:1.5}
.text-link{font-size:14px}
.menu-toggle{font-family:'Newsreader',Georgia,serif;font-weight:400}
@media(max-width:760px){.invitation-content>p{font-size:clamp(14px,3.3vw,17px);letter-spacing:.06em;max-width:350px;margin-inline:auto}.site-header .mobile-nav{display:none}.site-header .mobile-nav.open{display:flex}}


/* V5: two-font editorial system and restrained refinements */
:root { --ink:#565a49; --ornament:#9a9b87; }
.site-header {
  display:grid;
  grid-template-columns:minmax(0,1fr) 132px minmax(0,1fr);
  column-gap:clamp(16px,2.2vw,38px);
  padding-inline:clamp(20px,7vw,135px);
}
.site-header .nav-left {justify-content:flex-end;gap:clamp(22px,3.5vw,60px);}
.site-header .nav-right {justify-content:flex-start;gap:clamp(22px,3.5vw,60px);}
.nav-logo {width:112px;justify-self:center;}
.site-header .mobile-nav {display:none;}
.site-header nav a {white-space:nowrap;}
/* A smaller, more deliberate opening: airy script with a legible companion line */
.invitation {min-height:calc(92svh - 90px);padding:95px 24px 105px;}
.invitation-content {width:min(100%,860px);transform:translateY(-1%);}
.invitation h1 {
 font-size:clamp(64px,7.2vw,104px);
 font-weight:400;line-height:1.16;
 margin:0 auto 16px;
 letter-spacing:.004em;
}
.invitation-content>p {
 font-size:clamp(17px,1.45vw,20px);
 letter-spacing:.055em;
 line-height:1.5;
 margin:0 auto;
 max-width:650px;
}
.invitation-rule {top:15%;width:124px;}
.sprig {width:48px;margin:30px auto 0;opacity:.65;}
.scroll-cue {bottom:30px;}
/* Two frame families, on every photo */
.photo-frame {padding:13px;border:1px solid #a5a795;position:relative;background:transparent;}
.photo-frame::before {content:"";position:absolute;inset:5px;border:1px solid #cac9bb;pointer-events:none;z-index:2;}
.photo-frame.frame-dots {border:1px dotted #999b88;padding:13px;}
.photo-frame.frame-dots::before {border:1px solid #d3d0c2;inset:6px;}
.photo-frame img {display:block;}
.detail-collage .photo-frame {background:var(--paper);}
.detail-collage .emblem-photo {width:40%;}
.detail-collage .front-photo {width:43%;}
.ornamental-label i {font-style:normal;color:var(--ornament);}
.page-intro {padding-bottom:115px;}
/* Integrated FAQ: more compact than a stand-alone page */
.experience-faq {padding:78px 24px 92px;background:var(--paper);scroll-margin-top:35px;}
.experience-faq .faq-heading {padding:0 0 38px;}
.experience-faq .faq-heading h2 {font:400 clamp(66px,7.5vw,108px)/1.06 'Pinyon Script',cursive;}
.experience-faq .faq-heading>p {margin-top:10px;}
.experience-faq .faq-list {margin:0 auto;padding:0 12px;}
.experience-faq .faq-list details {padding:21px 5px;}
.experience-faq .faq-list summary {font-weight:300;}
.experience-faq .faq-list details p {font-weight:300;}
/* Inquiry: form immediately follows its introduction, with no artificial full-height gap */
.closing.inquire-page {
 min-height:0;padding:57px 24px 45px;
 background:var(--cream);
}
.inquire-page .intro-dots {margin:0 0 8px;}
.inquire-page h1 {margin:10px 0 8px;}
.inquire-page>p {margin:0 auto 17px;}
.tally-embed {width:min(100%,790px);margin:4px auto 0;}
.tally-embed iframe {width:100%;display:block;border:0;min-height:600px;}
.form-fallback {margin:6px 0 0;text-align:center;font-size:14px;}
/* Minimal footer */
footer {align-items:center;letter-spacing:.12em;}
footer a {text-underline-offset:4px;}
footer a:hover {text-decoration:underline;}
@media (max-width:760px) {
 .site-header {height:72px;grid-template-columns:1fr auto 1fr;column-gap:0;padding:0 20px;}
 .site-header .nav-left,.site-header .nav-right {display:none;}
 .site-header .mobile-nav {display:none;}
 .site-header .mobile-nav.open {display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;padding:12px 24px 22px;background:var(--cream);border-bottom:1px solid #c5c2b6;z-index:50;}
 .site-header .mobile-nav a {padding:10px 0;}
 .nav-logo {grid-column:2;width:103px;}
 .menu-toggle {display:block;grid-column:3;}
 .invitation {min-height:calc(83svh - 72px);padding:80px 20px 100px;}
 .invitation h1 {font-size:clamp(57px,11.2vw,81px);line-height:1.14;max-width:550px;}
 .invitation-content>p {font-size:clamp(15px,3.7vw,18px);letter-spacing:.035em;max-width:335px;}
 .invitation-rule {top:12%;}
 .sprig {width:43px;margin-top:25px;}
 .experience-faq {padding:60px 24px 70px;}
 .experience-faq .faq-heading {padding-bottom:27px;}
 .experience-faq .faq-heading h2 {font-size:clamp(65px,13vw,84px);}
 .experience-faq .faq-list {padding:0;}
 .experience-faq .faq-list summary {font-size:21px;}
 .closing.inquire-page {padding:42px 18px 30px;}
 .inquire-page h1 {font-size:75px;}
 .tally-embed {margin-top:0;}
 footer {justify-content:space-between;text-align:left;gap:12px;padding:23px 20px;}
}
@media (max-width:390px) {
 .invitation h1 {font-size:55px;}
 .invitation-content>p {font-size:14.5px;}
 .nav-logo {width:96px;}
}


/* V6: refined openings, photographic compositions and mobile editorial design */
.site-header {grid-template-columns:minmax(0,1fr) 112px minmax(0,1fr);column-gap:clamp(36px,5vw,100px);padding-inline:clamp(22px,4vw,72px)}
.site-header .nav-left{justify-content:space-evenly;gap:12px}
.site-header .nav-right{justify-content:space-evenly;gap:12px}
.invitation .sprig{display:none}
/* Matched opening ornament across Home and Experience; alternate motifs can be compared separately. */
.invitation-rule{top:14%;}
.page-intro.opening-mirror{position:relative;padding:115px 24px 110px;min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.page-intro.opening-mirror::before{content:'·   ✧   ·';white-space:pre;position:absolute;top:34px;left:50%;transform:translateX(-50%);font:18px 'Newsreader',serif;letter-spacing:.18em;color:#999d86}
.page-intro.opening-mirror h1{font-size:clamp(64px,7.2vw,104px)}
.page-intro.opening-mirror>p{margin-top:18px}
.page-intro.opening-mirror .intro-dots{margin-top:24px}
.invitation-rule i{font-size:0}
.invitation-rule i::before{content:'·  ✧  ·';font:17px 'Newsreader',serif;white-space:nowrap}
.vespa-frame{max-width:850px;width:100%;}
.vespa-frame img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto}
/* DÔEN-inspired asymmetric 4-photo composition, with frontshot as hero */
.detail-layout{grid-template-columns:minmax(0,1.22fr) minmax(0,.85fr);gap:7%}
.detail-collage{min-height:740px;position:relative}
.detail-collage figure{position:absolute;margin:0;transform:none}
.detail-collage .hero-front{width:55%;top:4%;left:0;z-index:1}
.detail-collage .support-seat{width:30%;top:0;right:6%;z-index:2}
.detail-collage .support-emblem{width:35%;top:37%;right:0;z-index:3}
.detail-collage .support-speedometer{width:29%;bottom:1%;left:23%;z-index:4}
.detail-collage figure img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.detail-collage .support-emblem img{aspect-ratio:4/5;object-fit:cover}
.detail-collage .support-speedometer img{aspect-ratio:5/4;object-fit:cover}
.occasion-images figure:last-child img{aspect-ratio:4/5;object-fit:cover;object-position:center center}
/* A quiet framed invitation on a contrasting color after FAQ */
.closing-invitation{background:var(--cream);padding:95px 24px 110px}
.invitation-panel{max-width:820px;margin:0 auto;padding:40px clamp(25px,6vw,85px) 48px;border:1px solid #a5a795;position:relative}
.invitation-panel::before{content:'';position:absolute;inset:7px;border:1px solid #cac9bb;pointer-events:none}
.closing-invitation h2,.closing.inquire-page h1{font-size:clamp(43px,4.2vw,57px);line-height:1.2}
.closing-invitation h2{margin:0 0 8px}
.closing-invitation .invitation-panel p{font-size:clamp(18px,1.7vw,22px);line-height:1.5;margin:0 auto 24px;max-width:540px}
.closing.inquire-page h1{margin:8px 0 8px}
@media(max-width:1000px) and (min-width:761px){.detail-collage{min-height:590px}.detail-layout{gap:5%}.site-header{column-gap:24px;padding-inline:20px}.site-header nav a{font-size:11px}}
@media(max-width:760px){
 .site-header{grid-template-columns:1fr auto 1fr;column-gap:0;padding:0 20px}
 .site-header .nav-left,.site-header .nav-right{display:none}
 .page-intro.opening-mirror{min-height:0;padding:110px 24px 80px}
 .page-intro.opening-mirror::before{top:33px}
 .page-intro.opening-mirror h1{font-size:clamp(58px,12vw,78px)}
 .page-intro.opening-mirror>p{margin-top:14px}
 .detail-layout{display:flex;flex-direction:column;gap:36px}
 .detail-collage{width:100%;min-height:0;display:grid;grid-template-columns:1.25fr 1fr;gap:14px;align-items:start}
 .detail-collage figure,.detail-collage .hero-front,.detail-collage .support-seat,.detail-collage .support-emblem,.detail-collage .support-speedometer{position:static;width:100%;transform:none}
 .detail-collage .hero-front{grid-row:span 2;align-self:center}
 .detail-collage .support-seat{grid-column:2}
 .detail-collage .support-emblem{grid-column:2}
 .detail-collage .support-speedometer{grid-column:1 / -1;width:52%;justify-self:center;margin-top:6px}
 .detail-collage .photo-frame{padding:7px}
 .detail-collage .photo-frame::before{inset:3px}
 .detail-copy{width:100%}
 .vespa-frame img{aspect-ratio:auto;object-fit:contain}
 .closing-invitation{padding:65px 20px 75px}
 .invitation-panel{padding:32px 22px 38px}
 .closing-invitation h2,.closing.inquire-page h1{font-size:clamp(43px,10vw,56px)}
 .closing-invitation .invitation-panel p{font-size:19px}
 .closing.inquire-page{padding:42px 18px 30px}
 .tally-embed iframe{max-width:100%;min-height:600px}
}
@media(max-width:390px){.detail-collage{gap:9px}.invitation-panel{padding-inline:17px}}

/* V7: smaller unified editorial scripts, original uncropped photographs */
.invitation h1 {font-size:clamp(54px,5.55vw,80px);line-height:1.18;}
/* Main headings share a consistent visual scale; the invitation remains intentionally smaller. */
h2,.page-intro h1,.experience-faq .faq-heading h2 {font-size:clamp(54px,5.8vw,88px);line-height:1.08;}
.page-intro.opening-mirror h1 {font-size:clamp(54px,5.8vw,88px);}
/* Preserve approved Oh, do tell sizing. */
.closing-invitation h2,.closing.inquire-page h1 {font-size:clamp(43px,4.2vw,57px);line-height:1.2;}
.invitation-rule {display:none;}
.vespa-frame img {aspect-ratio:auto!important;object-fit:contain!important;width:100%;height:auto!important;}
.detail-collage .hero-front{width:59%;top:6%;left:0;}
.detail-collage .support-seat{width:31%;top:3%;right:4%;}
.detail-collage .support-emblem{width:38%;top:46%;right:0;}
.detail-collage{min-height:640px;}
.closing-copy-line{display:block;}
@media(max-width:760px){
 .invitation h1{font-size:clamp(48px,9vw,64px);}
 .feeling-copy h2,.reveal h2,.detail-copy h2,.occasion-copy h2,.page-intro.opening-mirror h1,.experience-faq .faq-heading h2{font-size:clamp(54px,10.5vw,68px);}
 .closing-invitation h2,.closing.inquire-page h1{font-size:clamp(43px,10vw,56px);}
 .detail-collage{min-height:0;}
 .detail-collage .hero-front,.detail-collage .support-seat,.detail-collage .support-emblem{width:100%;}
 .closing-copy-line{display:block;}
}
@media(max-width:390px){.invitation h1{font-size:clamp(45px,11.8vw,50px);}}

/* V8: intentionally unadorned Experience opening; no ornaments or reserved whitespace */
.page-intro.opening-mirror::before,.page-intro.opening-mirror::after{content:none!important;display:none!important;}
.page-intro.opening-mirror{min-height:0!important;padding:72px 24px 66px!important;}
.page-intro.opening-mirror>p{margin-top:18px;}
.page-intro.opening-mirror .intro-dots{display:none!important;}
@media(max-width:760px){.page-intro.opening-mirror{padding:65px 24px 58px!important;}}
/* Preserve the user's exact front-shot crop and aspect ratio */
.detail-collage .hero-front img{width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;}

/* Version 9: restore a spacious Experience opening to match the Home landing.
   Retain the ornament-free Version 8 design and all approved typography. */
.page-intro.opening-mirror {
  min-height: calc(100svh - 90px) !important;
  padding: 105px 24px 115px !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.page-intro.opening-mirror::before,
.page-intro.opening-mirror::after,
.page-intro.opening-mirror .intro-dots {
  content: none !important;
  display: none !important;
}
@media (max-width: 760px) {
  .page-intro.opening-mirror {
    min-height: calc(90svh - 72px) !important;
    padding: 90px 24px 100px !important;
  }
}

/* Version 10: understated scroll arrow on Experience, no text label. */
.page-intro.opening-mirror { position: relative; }
.page-intro.opening-mirror .experience-scroll-arrow {
  position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%);
  color: var(--ink); display: flex; align-items: center; justify-content: center;
  text-decoration: none; padding: 8px 16px;
}
.page-intro.opening-mirror .experience-scroll-arrow span { font: 24px Georgia,serif; line-height: 1; }
.page-intro.opening-mirror .experience-scroll-arrow:hover { opacity: .65; }
@media (max-width: 760px) { .page-intro.opening-mirror .experience-scroll-arrow { bottom: 26px; } }

/* V11: wide, shallow editorial inquiry frame; responsive and aligned with Tally */
.inquire-page .inquire-intro-panel {
 width:min(100%,790px);margin:0 auto 26px;
 padding:31px clamp(24px,5vw,64px) 29px;
 border:1px solid #a5a795;position:relative;
}
.inquire-page .inquire-intro-panel::before {
 content:"";position:absolute;inset:7px;border:1px solid #cac9bb;pointer-events:none;
}
.inquire-page .inquire-intro-panel h1 {margin:0 0 7px;font-size:clamp(43px,4.2vw,57px);line-height:1.2;}
.inquire-page .inquire-intro-panel p {max-width:590px;margin:0 auto;font-size:clamp(18px,1.7vw,22px);line-height:1.5;}
.inquire-page .tally-embed {margin-top:0;}
@media(max-width:760px) {
 .inquire-page .inquire-intro-panel {width:100%;padding:26px 22px 25px;margin-bottom:23px;}
 .inquire-page .inquire-intro-panel h1 {font-size:clamp(43px,10vw,56px);}
 .inquire-page .inquire-intro-panel p {font-size:clamp(18px,4.5vw,21px);}
}
@media(max-width:390px) {
 .inquire-page .inquire-intro-panel {padding:24px 17px 23px;}
 .inquire-page .inquire-intro-panel::before {inset:5px;}
}

/* V12: frame-free editorial introduction to the Inquire page. */
.inquire-page .inquire-intro-editorial {
  width:min(100%,790px); margin:0 auto 31px; padding:25px 12px 9px;
  border:0; background:none; text-align:center;
}
.inquire-page .inquire-intro-editorial h1 {
  font:400 clamp(54px,5.8vw,78px)/1.18 'Pinyon Script',cursive;
  margin:0 0 18px; color:var(--ink);
}
.inquire-page .inquire-intro-editorial p {
  font:400 clamp(11px,1.12vw,14px)/1.6 'Newsreader',Georgia,serif;
  letter-spacing:.22em; color:var(--ink); margin:0 auto; max-width:100%;
}
@media(max-width:760px){
 .inquire-page .inquire-intro-editorial{padding:24px 6px 8px;margin-bottom:25px;}
 .inquire-page .inquire-intro-editorial h1{font-size:clamp(53px,11vw,68px);margin-bottom:16px;}
 .inquire-page .inquire-intro-editorial p{font-size:clamp(10px,2.8vw,12px);letter-spacing:.14em;}
}


/* V14 — mobile-only refinements. Desktop styles intentionally unchanged. */
@media (max-width:760px) {
  /* La Dolce Vita: retain left-aligned copy, offset the photograph to the right. */
  .feeling-grid {gap:27px;}
  .feeling-copy {padding-left:0;}
  .gelato-frame {width:78%; max-width:360px; margin:8px 0 0 auto; justify-self:end; transform:rotate(.45deg);}

  /* Three independent photo frames, with no collage-wide outline or empty frame. */
  .detail-collage {
    display:grid; position:relative; width:100%; min-height:0;
    grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);
    grid-template-rows:auto auto; column-gap:12px; row-gap:12px;
    align-items:center; border:0; outline:0; background:none;
  }
  .detail-collage::before,.detail-collage::after {content:none!important;display:none!important;}
  .detail-collage figure,
  .detail-collage .hero-front,
  .detail-collage .support-seat,
  .detail-collage .support-emblem {
    position:static!important; top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
    width:100%!important;height:auto!important;min-height:0!important;
    margin:0!important;transform:none!important;align-self:center;
  }
  .detail-collage .hero-front {grid-column:1;grid-row:1 / 3;}
  .detail-collage .support-seat {grid-column:2;grid-row:1;}
  .detail-collage .support-emblem {grid-column:2;grid-row:2;}
  .detail-collage .photo-frame {padding:6px;}
  .detail-collage .photo-frame::before {inset:3px;}
  .detail-collage figure img {display:block;width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;}
  .detail-layout {gap:29px;}

  /* Occasion photographs: paired, staggered and uncropped on phones. */
  .occasion-images {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start;max-width:100%;}
  .occasion-images figure,.occasion-images figure:last-child {width:100%;max-width:none;margin:0;min-width:0;}
  .occasion-images figure:first-child {transform:translateY(0) rotate(-.6deg);}
  .occasion-images figure:last-child {transform:translateY(19px) rotate(.5deg);}
  .occasion-images .photo-frame {padding:6px;}
  .occasion-images .photo-frame::before {inset:3px;}
  .occasion-images img,.occasion-images figure:last-child img {width:100%;height:auto;aspect-ratio:auto;object-fit:contain;}
  .occasion-images {margin-bottom:22px;}
}
@media (max-width:390px) {
 .detail-collage {column-gap:9px;row-gap:9px;}
 .occasion-images {gap:9px;}
}


/* V15 — phone-only layout corrections; desktop rules remain identical to V14. */
@media (max-width:760px) {
  /* The tagline is a single, delicately tracked line on phones. */
  .invitation-content {width:100%;max-width:100%;}
  .invitation-content>p {font-size:clamp(8px,2.45vw,11px)!important;letter-spacing:.045em!important;max-width:none!important;white-space:nowrap;line-height:1.5;}

  /* La Dolce Vita: deliberately centered heading and decorative marks,
     editorial left-aligned paragraph, and a centered photo below. */
  .feeling-grid {display:flex!important;flex-direction:column;gap:25px!important;margin-top:45px;align-items:center;}
  .feeling-copy {width:100%;max-width:470px;padding:0!important;text-align:left;}
  .feeling-copy h2 {text-align:center;font-size:clamp(55px,11vw,69px);margin-bottom:18px;}
  .feeling-copy p {text-align:left;}
  .feeling-copy .dot-trio {text-align:center;margin-top:18px;}
  .gelato-frame {width:min(82%,370px)!important;max-width:370px;margin:8px auto 0!important;justify-self:center!important;align-self:center;transform:rotate(.45deg);}

  /* Three separate frames, no stretched/empty frame from grid placement. */
  .detail-collage {display:grid!important;grid-template-columns:minmax(0,1.27fr) minmax(0,.95fr)!important;grid-template-rows:auto auto!important;gap:11px!important;min-height:0!important;align-items:center!important;overflow:visible;border:0!important;outline:0!important;box-shadow:none!important;}
  .detail-collage::before,.detail-collage::after {display:none!important;content:none!important;}
  .detail-collage > figure {position:relative!important;inset:auto!important;transform:none!important;display:block!important;min-height:0!important;height:fit-content!important;align-self:center!important;width:100%!important;margin:0!important;box-shadow:none!important;}
  .detail-collage > .hero-front {grid-column:1!important;grid-row:1 / 3!important;}
  .detail-collage > .support-seat {grid-column:2!important;grid-row:1!important;}
  .detail-collage > .support-emblem {grid-column:2!important;grid-row:2!important;}
  .detail-collage > figure img {height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;}
  .detail-copy h2 {text-align:center!important;}
}
@media(max-width:360px) {
  .invitation-content>p {font-size:8px!important;letter-spacing:.01em!important;}
}


/* V16 — phone-specific finishing refinements. All desktop styles are unchanged. */
@media (max-width:760px) {
  /* Slightly more prominent single-line tagline, without changing the scroll cue. */
  .invitation-content>p {
    font-size:clamp(9px,2.73vw,12px)!important;
    letter-spacing:.012em!important;
    white-space:nowrap!important;
    max-width:none!important;
  }

  /* La Dolce Vita: centered typographic grouping and smaller framed photograph. */
  .feeling-copy p {text-align:center!important;}
  .gelato-frame {
    width:min(62%,280px)!important;
    max-width:280px!important;
    margin:8px auto 0!important;
    justify-self:center!important;
  }

  /* True desktop-style photographic collage: independent frames, absolutely
     positioned. No grid row-span can stretch the hero frame into a blank box. */
  .detail-collage {
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:1 / 1.12;
    padding:0!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    background:transparent!important;
    overflow:visible!important;
  }
  .detail-collage::before,.detail-collage::after {content:none!important;display:none!important;}
  .detail-collage > figure {
    position:absolute!important;
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:6px!important;
    transform:none!important;
    align-self:auto!important;
    grid-column:auto!important;
    grid-row:auto!important;
    box-shadow:none!important;
  }
  .detail-collage > .hero-front {
    width:57%!important;
    top:15%!important;left:0!important;right:auto!important;bottom:auto!important;
  }
  .detail-collage > .support-seat {
    width:37%!important;
    top:0!important;right:1%!important;left:auto!important;bottom:auto!important;
  }
  .detail-collage > .support-emblem {
    width:40%!important;
    top:51%!important;right:0!important;left:auto!important;bottom:auto!important;
  }
  .detail-collage > figure::before {inset:3px!important;}
  .detail-collage > figure img {
    display:block!important;width:100%!important;height:auto!important;
    aspect-ratio:auto!important;object-fit:contain!important;
  }

  /* The mobile menu is a quiet right-side drawer over a stationary page. */
  .site-header {z-index:60;}
  .site-header .mobile-nav,
  .site-header .mobile-nav.open {
    display:flex!important;
    position:fixed!important;
    top:0!important;bottom:0!important;right:0!important;left:auto!important;
    width:min(82vw,370px)!important;
    height:100dvh!important;
    padding:92px 34px 40px!important;
    background:var(--cream)!important;
    border:0!important;
    box-shadow:-12px 0 35px rgba(34,36,30,.07);
    z-index:102!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    align-items:flex-start!important;
    gap:29px!important;
    transform:translateX(105%)!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:transform .36s ease,visibility .36s!important;
  }
  .site-header .mobile-nav.open {
    transform:translateX(0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .site-header .mobile-nav a {
    font-size:15px!important;
    line-height:1.45!important;
    letter-spacing:.15em!important;
  }
  .mobile-nav-close {
    display:block;position:absolute;right:27px;top:23px;
    border:0;background:transparent;color:var(--ink);
    font:300 32px/1 'Newsreader',Georgia,serif;
    padding:6px;cursor:pointer;
  }
  .mobile-menu-scrim {
    position:fixed;inset:0;z-index:59;
    background:rgba(42,44,37,.24);
    opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .36s ease,visibility .36s;
  }
  body.mobile-menu-open .mobile-menu-scrim {
    opacity:1;visibility:visible;pointer-events:auto;
  }
  body.mobile-menu-open {overflow:hidden;}
}
@media (min-width:761px) {
  .mobile-menu-scrim,.mobile-nav-close {display:none!important;}
}
@media (max-width:360px) {
  .invitation-content>p {font-size:clamp(8px,2.6vw,9px)!important;letter-spacing:0!important;}
}
@media (prefers-reduced-motion:reduce) {
  .mobile-nav,.mobile-menu-scrim {transition:none!important;}
}


/* V17: isolate the mobile collage from older, conflicting positioning rules.
   Desktop declarations are deliberately unchanged. */
@media screen and (max-width:760px) {
  .detail-section .detail-layout {
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:32px!important;
  }
  .detail-section .detail-layout .detail-collage {
    display:grid!important;
    position:relative!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    grid-template-columns:minmax(0,1.48fr) minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:12px!important;
    align-items:center!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    outline:0!important;
    background:none!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  .detail-section .detail-layout .detail-collage::before,
  .detail-section .detail-layout .detail-collage::after {content:none!important;display:none!important;}
  .detail-section .detail-layout .detail-collage > figure.photo-frame {
    position:relative!important;
    top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    padding:6px!important;
    align-self:center!important;
    justify-self:stretch!important;
    transform:none!important;
    background:transparent!important;
    border:1px solid #aaa994!important;
    outline:0!important;
    box-shadow:none!important;
  }
  .detail-section .detail-layout .detail-collage > figure.photo-frame::before {
    content:''!important;display:block!important;position:absolute!important;
    inset:3px!important;border:1px solid #c7c4b6!important;pointer-events:none!important;
  }
  .detail-section .detail-layout .detail-collage > .hero-front {
    grid-column:1!important;grid-row:1 / span 2!important;
  }
  .detail-section .detail-layout .detail-collage > .support-seat {
    grid-column:2!important;grid-row:1!important;
  }
  .detail-section .detail-layout .detail-collage > .support-emblem {
    grid-column:2!important;grid-row:2!important;
  }
  .detail-section .detail-layout .detail-collage > figure.photo-frame img {
    display:block!important;width:100%!important;height:auto!important;
    aspect-ratio:auto!important;object-fit:contain!important;
  }
  .detail-section .detail-layout .detail-copy {
    position:relative!important;width:100%!important;clear:both!important;
  }
  .detail-section .detail-layout .detail-copy h2 {text-align:center!important;}

  /* Compact, right-anchored overlay, with original restrained typography. */
  .site-header .mobile-nav,
  .site-header .mobile-nav.open {
    display:flex!important;
    position:fixed!important;
    top:84px!important;right:12px!important;left:auto!important;bottom:auto!important;
    width:min(70vw,270px)!important;
    height:auto!important;min-height:0!important;max-height:calc(100dvh - 100px)!important;
    padding:43px 23px 24px!important;
    flex-direction:column!important;align-items:flex-start!important;
    justify-content:flex-start!important;gap:15px!important;
    background:var(--cream)!important;
    border:1px solid #d3d0c4!important;
    box-shadow:0 9px 25px rgba(42,44,37,.08)!important;
    z-index:102!important;
    transform:translateX(16px)!important;
    opacity:0!important;
    visibility:hidden!important;pointer-events:none!important;
    transition:opacity .22s ease,transform .22s ease,visibility .22s!important;
  }
  .site-header .mobile-nav.open {
    transform:translateX(0)!important;
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  }
  .site-header .mobile-nav a {
    font-size:12px!important;line-height:1.45!important;letter-spacing:.14em!important;
  }
  .site-header .mobile-nav .mobile-nav-close {
    top:8px!important;right:12px!important;padding:4px!important;
    font-size:25px!important;line-height:1!important;
  }
  .mobile-menu-scrim {background:rgba(42,44,37,.14)!important;}
}
@media screen and (max-width:360px) {
  .detail-section .detail-layout .detail-collage {gap:8px!important;}
  .site-header .mobile-nav,.site-header .mobile-nav.open {right:8px!important;width:min(75vw,260px)!important;}
}
