@font-face{font-family:Allura;src:url('../fonts/allura.ttf') format('truetype');font-display:swap}
.reference-page{--bg:#0b0d0b;--text:#faf7ee;--gold:#efb955;--muted:#d0d0cb;--line:#393a30;--serif:Georgia,'Times New Roman',serif;background:var(--bg);color:var(--text);color-scheme:dark}
.reference-page .container{width:min(1320px,calc(100% - 112px))}.reference-page .site-header{background:#0b0d0b;border-bottom:1px solid #6d4b1c}.reference-page .header-inner{min-height:102px;gap:36px}.brand-lockup{display:block;width:350px;flex-shrink:0}.brand-lockup img{width:100%;height:100px;object-fit:contain;mix-blend-mode:screen}.reference-page .site-header nav{justify-content:center;gap:36px}.reference-page .site-header nav a{font:14px/1.4 var(--sans);letter-spacing:0;text-transform:none;padding:14px 0}.reference-page .site-header nav a:last-child{margin:0;padding:14px 0;border:none}.reference-page .site-header nav a[aria-current]{color:var(--gold)}.reference-page .site-header nav a[aria-current]:after{height:2px;bottom:0;background:var(--gold)}
.reference-page .button{font:14px/1.4 var(--sans);letter-spacing:0;background:linear-gradient(110deg,#efbd67,#d69c43);border:1px solid #dca94f;border-radius:3px;color:#090b09;padding:17px 29px;gap:18px;min-height:52px}.reference-page .button:hover{background:#f3c879}.reference-page .button-outline{background:#080a0899;color:#fff;border:1px solid #d7a848}.reference-page .button-outline:hover{background:#28241b}.header-plan{flex-shrink:0}.reference-page .arrow{width:22px;height:22px}.section-label{font:12px/1.6 var(--sans);letter-spacing:.36em;color:var(--gold);margin-bottom:20px}.button-group{display:flex;gap:28px;align-items:center;flex-wrap:wrap}
.reference-hero{position:relative;isolation:isolate;overflow:hidden;background:#14100b}.hero-slides,.reference-hero-shade{position:absolute;inset:0;z-index:-2}.reference-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 49%;opacity:0;transition:opacity .55s ease}.reference-slide.is-active{opacity:1}.reference-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(0,0,0,.45),rgba(0,0,0,.13) 52%,transparent 75%)}.reference-hero-inner{min-height:548px;position:relative;display:flex;align-items:center;padding-block:55px}.reference-hero-copy{max-width:790px}.reference-hero-copy .section-label{letter-spacing:.48em;margin-bottom:24px}.reference-hero h1{font:400 clamp(44px,4.55vw,66px)/1.01 var(--serif);letter-spacing:-.025em;margin-bottom:17px}.reference-hero h1 span{display:block}.reference-hero h1 span:last-child{color:var(--gold)}.hero-brand{font-size:12px;letter-spacing:.35em;line-height:1.9;margin-bottom:30px}.hero-handwriting{position:absolute;right:12px;top:32%;font:43px/.93 Allura,cursive;transform:rotate(-8deg);margin:0;text-align:left;text-shadow:0 2px 8px #000}.hero-handwriting span{display:block}.carousel-controls:not([hidden]){display:flex;gap:14px;align-items:center;position:absolute;right:-30px;bottom:18px}.slide-tabs{display:flex;gap:12px;align-items:center;margin-right:12px}.slide-tab{border:0;background:none;color:#e2d6bf;font:10px var(--sans);letter-spacing:.12em;padding:9px 0;cursor:pointer;display:flex;gap:8px;align-items:center}.slide-tab:before{content:'';height:1px;width:0;background:#e9d2a3;transition:width .2s}.slide-tab.is-active:before{width:30px}.slide-tab.is-active{color:var(--gold)}.carousel-arrow{background:transparent;color:var(--gold);border:1px solid var(--gold);border-radius:50%;width:36px;height:36px;display:grid;place-items:center;cursor:pointer}.carousel-arrow:hover{background:#322719}.carousel-arrow.previous .arrow{transform:rotate(180deg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.feature-strip{background:#0d0f0d;border-block:1px solid #303025}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:30px}.feature-item{text-align:center;position:relative;padding-inline:12px}.feature-item+.feature-item:before{content:'';position:absolute;left:0;top:26px;bottom:4px;width:1px;background:#414135}.line-icon{display:block;width:43px;height:43px;color:var(--gold);margin:0 auto 14px}.feature-item h2{font-size:19px;line-height:1.2;margin-bottom:7px}.feature-item p{font:14px/1.4 var(--sans);color:#d0d0cb;margin:0}
.reference-about{background:#f2efe9;color:#151613}.reference-about-inner{display:grid;grid-template-columns:40% 60%;gap:26px;align-items:center;padding-block:28px;min-height:425px}.reference-about-copy{padding-right:26px}.reference-about .section-label{color:#b47a22;font-size:11px;letter-spacing:.32em;margin-bottom:20px}.reference-about h2{font:400 clamp(30px,2.9vw,42px)/1.1 var(--serif);letter-spacing:-.04em;margin-bottom:26px}.reference-about h2 em{color:#c58b36;font-style:normal}.about-description{font:14px/1.7 var(--sans);color:#33362f;margin-bottom:28px;max-width:470px}.about-collage{height:370px;display:grid;grid-template-columns:1.2fr 1fr .78fr;gap:5px;position:relative;align-items:end;padding-right:26px}.about-collage:before{content:'';position:absolute;z-index:0;left:-30px;top:23px;width:80px;height:150px;border:2px solid #c99944}.scene-atlas{background-image:url('../images/event-scenes.png');background-size:300% 200%;background-repeat:no-repeat}.scene-1{background-position:0 0}.scene-2{background-position:50% 0}.scene-3{background-position:100% 0}.scene-4{background-position:0 100%}.scene-5{background-position:50% 100%}.scene-6{background-position:100% 100%}.scene-hero{background-size:300% auto;background-position:0 calc(50% - 50vw)}.collage-arch{height:100%;position:relative;background-size:auto 200%;background-position:0 0}.collage-brand{height:96%;background:#0a0c0a;position:relative;overflow:hidden;display:flex;align-items:center}.collage-brand img{width:100%;height:auto;mix-blend-mode:screen}.collage-detail{height:88%;display:flex;flex-direction:column;gap:25px}.collage-detail>p{font:9px/1.9 var(--sans);letter-spacing:.33em;max-width:140px;margin:0 auto;padding:8px 12px}.collage-detail .scene-atlas{flex:1;background-size:auto 200%;background-position:50% 100%}
.reference-services{padding-block:34px 22px;background:radial-gradient(ellipse at 68% 60%,#282215 0,transparent 62%),#0b0d0b}.services-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:20px}.services-heading .section-label{font-size:11px;margin-bottom:12px}.services-heading h2{font-size:40px;line-height:1.15;letter-spacing:-.025em;margin:0}.all-services{display:flex;align-items:center;gap:22px;color:var(--gold);font-size:14px;flex-shrink:0}.service-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.service-card{display:block;min-width:0;height:280px;border:1px solid #444137;position:relative;isolation:isolate;overflow:hidden}.service-card-image{position:absolute;inset:0;z-index:-2;transition:transform .5s}.service-card:hover .service-card-image{transform:scale(1.04)}.service-card:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#0b0d0b 77%);z-index:-1}.service-card-copy{position:absolute;bottom:17px;left:5px;right:5px;text-align:center}.service-card .line-icon{width:34px;height:34px;margin-bottom:10px}.service-card h3{font-size:19px;line-height:1.2;color:#fff;margin-bottom:7px}.service-card p{font:12px/1.4 var(--sans);color:#d2d2ca;margin:0}.service-card:hover{border-color:var(--gold)}
.closing-cta{position:relative;isolation:isolate;overflow:hidden;border-block:1px solid #594529;background:#090b09}.closing-image{position:absolute;left:0;top:0;width:42%;height:100%;z-index:-2;background-size:300% 200%;background-position:100% 100%}.closing-cta:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 12%,#090b09 44%)}.closing-inner{min-height:263px;display:grid;grid-template-columns:1.15fr 2fr 1fr;align-items:center;gap:28px;padding-block:30px}.closing-copy{grid-column:2;text-align:center}.closing-copy .section-label{font-size:9px;letter-spacing:.35em;margin-bottom:13px}.closing-copy h2{font-size:35px;line-height:1.15;letter-spacing:-.03em;margin-bottom:10px;white-space:nowrap}.closing-description{font-size:13px;margin-bottom:20px}.closing-copy .button-group{justify-content:center;gap:24px}.closing-copy .button{padding:12px 26px;min-height:44px;font-size:13px}.closing-values{display:flex;align-items:center;justify-content:space-between}.closing-values>div{flex:1;text-align:center;padding:0 16px;border-left:1px solid #565648}.closing-values>div:first-child{border:0}.closing-values .line-icon{width:29px;height:29px;margin-bottom:12px}.closing-values span{font-size:12px}
.reference-footer{background:#0b0d0b;padding:18px 0 22px}.reference-footer-top{display:flex;justify-content:space-between;align-items:center;gap:55px}.reference-footer .brand-lockup{width:330px}.reference-footer .brand-lockup img{height:102px}.reference-footer nav{display:flex;gap:31px;align-items:center;font-size:13px;margin-right:auto}.reference-footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:25px}.reference-footer-bottom p{font-size:12px;color:#cecec7;margin:0}.reference-footer-bottom p:last-child{font-size:9px;letter-spacing:.1em}.reference-footer-bottom span{padding:0 13px}.reference-footer-notes{display:flex;justify-content:space-between;gap:20px;margin-top:13px;color:#aaa99e}.reference-footer-notes p{font-size:10px;margin:0}
@media(max-width:1200px){.reference-page .container{width:calc(100% - 80px)}.brand-lockup{width:280px}.reference-page .header-inner{gap:22px;min-height:88px}.brand-lockup img{height:85px}.reference-page .site-header nav{gap:28px}.reference-page .site-header nav a{font-size:12px}.reference-page .header-plan{padding:14px 22px;min-height:46px;font-size:12px}.reference-hero-inner{min-height:470px}.reference-hero h1{font-size:54px}.hero-handwriting{font-size:39px;right:8px}.feature-grid{padding-block:26px}.feature-item h2{font-size:17px}.feature-item p{font-size:12px}.reference-about-inner{min-height:370px;gap:18px}.about-collage{height:320px;padding-right:18px}.reference-about-copy{padding-right:16px}.reference-about h2{font-size:33px}.about-description{font-size:12px}.reference-about .button{font-size:12px;padding:14px 23px;min-height:45px}.service-card{height:240px}.service-card h3{font-size:17px}.service-card p{font-size:11px}.services-heading h2{font-size:34px}.closing-copy h2{font-size:29px}.closing-inner{min-height:225px;gap:20px;grid-template-columns:1fr 2fr 1fr}.closing-description{font-size:11px}.closing-values>div{padding:0 10px}.reference-footer nav{gap:24px;font-size:12px}.reference-footer .brand-lockup{width:290px}}
@media(max-width:1000px){.reference-page .container{width:calc(100% - 60px)}.reference-page .header-inner{gap:18px}.brand-lockup{width:240px}.reference-page .site-header nav{gap:23px}.reference-page .header-plan{padding:12px 18px}.reference-hero-inner{min-height:440px}.reference-hero h1{font-size:48px}.reference-hero-copy .section-label{font-size:10px}.hero-brand{font-size:10px}.hero-handwriting{font-size:34px}.reference-about h2{font-size:29px}.about-collage{height:310px}.reference-about-copy{padding-right:5px}.service-cards{gap:12px}.service-card{height:230px}.service-card h3{font-size:16px}.service-card p{font-size:10px}.closing-inner{grid-template-columns:.8fr 2fr 1fr;gap:15px}.closing-copy h2{font-size:26px}.closing-values>div{padding:0 8px}.closing-values span{font-size:10px}.closing-copy .button{font-size:11px;padding:10px 20px;min-height:40px}.reference-footer-top{gap:25px}.reference-footer .brand-lockup{width:250px}.reference-footer nav{gap:23px;font-size:11px}}
@media(max-width:760px){.reference-page .container{width:calc(100% - 40px)}.reference-page .header-inner{min-height:85px;padding-block:0;gap:0}.brand-lockup{width:230px}.brand-lockup img{height:82px}.reference-page .menu-toggle:not([hidden]){color:var(--gold);font-size:11px}.reference-page .header-plan{display:none}.reference-page .site-header nav{justify-content:flex-start;gap:15px 25px;padding:5px 0 18px}.reference-page .site-header nav.enhanced{display:none}.reference-page .site-header nav.enhanced.is-open{display:flex}.reference-page .site-header nav a,.reference-page .site-header nav a:last-child{font-size:13px;padding:10px 0}.reference-hero-inner{min-height:570px;align-items:center;padding-block:60px 95px}.reference-hero h1{font-size:clamp(38px,7vw,53px);line-height:1.08;letter-spacing:-.035em}.reference-hero h1 span:last-child{max-width:540px}.reference-hero-copy .section-label{letter-spacing:.27em;font-size:9px;margin-bottom:22px}.hero-brand{font-size:9px;letter-spacing:.22em;margin:22px 0 26px}.reference-slide{object-position:64% center}.reference-hero-shade{background:linear-gradient(90deg,#080906c9,#08090666)}.hero-handwriting{display:none}.reference-page .button{font-size:12px;padding:14px 18px;min-height:47px;gap:12px}.button-group{gap:15px}.carousel-controls:not([hidden]){right:0;bottom:22px}.feature-grid{grid-template-columns:1fr 1fr;gap:28px 12px;padding-block:28px}.feature-item{padding-inline:3px}.feature-item:nth-child(3):before{display:none}.feature-item h2{font-size:16px}.feature-item p{font-size:11px;max-width:170px;margin-inline:auto}.line-icon{width:35px;height:35px;margin-bottom:12px}.feature-item+.feature-item:before{top:10px;bottom:0}.reference-about-inner{grid-template-columns:1fr;padding-block:36px;gap:30px}.reference-about h2{font-size:34px;letter-spacing:-.035em}.reference-about .section-label{font-size:10px;margin-bottom:16px}.reference-about-copy{padding:0}.about-description{font-size:13px;line-height:1.8;max-width:none;margin-bottom:23px}.about-collage{height:290px;padding:0;gap:4px;grid-template-columns:1.15fr 1fr .7fr}.about-collage:before{left:-10px;width:50px;height:100px}.collage-detail{gap:15px}.collage-detail>p{font-size:7px;padding:0 6px;letter-spacing:.2em}.reference-services{padding-block:32px}.services-heading{align-items:flex-start;gap:18px;flex-direction:column;margin-bottom:22px}.services-heading h2{font-size:31px}.services-heading .section-label{font-size:9px;margin-bottom:10px}.all-services{font-size:12px;gap:15px}.service-cards{grid-template-columns:1fr 1fr;gap:14px}.service-card{height:240px}.service-card:last-child{grid-column:1 / -1;height:245px}.service-card:last-child .service-card-image{background-size:300% auto;background-position:50% 83%}.service-card h3{font-size:17px}.service-card p{font-size:10px}.service-card .line-icon{width:30px;height:30px}.closing-inner{display:flex;flex-direction:column;padding:45px 0 35px;gap:32px}.closing-image{width:100%;opacity:.28}.closing-cta:after{background:linear-gradient(90deg,#090b0999,#090b09db)}.closing-copy{width:100%}.closing-copy h2{white-space:normal;font-size:31px}.closing-copy .section-label{font-size:8px;letter-spacing:.25em}.closing-description{font-size:12px;max-width:300px;margin:0 auto 24px}.closing-copy .button{font-size:12px}.closing-values{width:270px}.closing-values span{font-size:11px}.reference-footer{padding-block:16px 25px}.reference-footer-top{flex-direction:column;gap:10px;align-items:flex-start}.reference-footer .brand-lockup{width:245px}.reference-footer nav{gap:16px 23px;flex-wrap:wrap;line-height:2}.reference-footer .brand-lockup img{height:92px}.reference-footer-bottom{flex-direction:column;gap:16px;margin-top:24px}.reference-footer-bottom p{font-size:10px}.reference-footer-bottom p:last-child{font-size:8px}.reference-footer-notes{flex-direction:column;gap:8px;margin-top:16px}.reference-footer-notes p{font-size:9px}.scene-hero{background-size:auto 200%;background-position:0 100%}}
@media(prefers-reduced-motion:reduce){.reference-slide,.service-card-image,.slide-tab:before{transition:none}}

/* Preserve the supplied lockup proportions while trimming its empty canvas in layout. */
.reference-page .brand-lockup{height:100px;overflow:hidden}
.reference-page .brand-lockup img{height:auto;max-width:none;object-fit:contain;transform:translateY(-20px);mix-blend-mode:lighten}
@media(max-width:1200px){.reference-page .brand-lockup{height:85px}.reference-page .brand-lockup img{transform:translateY(-14px)}}
@media(max-width:1000px){.reference-page .brand-lockup img{transform:translateY(-6px)}}
@media(max-width:760px){.reference-page .brand-lockup{height:82px}.reference-page .brand-lockup img{transform:translateY(-5px)}}
/* Match the supplied 1024px reference proportions on compact desktop screens. */
@media(min-width:761px) and (max-width:1200px){
 .reference-page .container{width:calc(100% - 96px)}
 .reference-page .header-inner{min-height:73px;gap:24px}
 .reference-page .brand-lockup{width:260px;height:73px}
 .reference-page .brand-lockup img{transform:translateY(-16px)}
 .reference-page .site-header nav{gap:29px}
 .reference-page .site-header nav a{font-size:11px;padding-block:12px}
 .reference-page .header-plan{font-size:11px;padding:10px 19px;min-height:38px}
 .reference-hero-inner{min-height:390px;padding-block:42px}
 .reference-hero h1{font-size:48px;line-height:.97;margin-bottom:13px}
 .reference-hero-copy .section-label{font-size:10px;margin-bottom:19px;letter-spacing:.42em}
 .hero-brand{font-size:10px;line-height:1.9;margin-bottom:22px}
 .reference-page .button{min-height:38px;font-size:12px;padding:10px 22px}
 .reference-hero .button-group{gap:26px}
 .hero-handwriting{font-size:35px;top:35%;right:6px}
 .carousel-controls:not([hidden]){bottom:10px;right:-28px;gap:9px}
 .carousel-arrow{width:28px;height:28px}.slide-tab{font-size:8px}
 .feature-grid{padding-block:20px}
 .feature-item .line-icon{width:33px;height:33px;margin-bottom:9px}
 .feature-item h2{font-size:14px;margin-bottom:5px}.feature-item p{font-size:11px}
 .feature-item+.feature-item:before{top:18px;bottom:3px}
 .reference-about-inner{min-height:304px;padding-block:20px;gap:12px}
 .reference-about h2{font-size:30px;margin-bottom:20px}
 .reference-about .section-label{font-size:9px;margin-bottom:15px}
 .about-description{font-size:11px;line-height:1.6;margin-bottom:21px}
 .reference-about-copy{padding-right:13px}.about-collage{height:264px;padding-right:12px}
 .collage-detail>p{font-size:7px;padding:8px 9px;letter-spacing:.28em}.collage-detail{gap:16px}
 .reference-services{padding-block:25px 16px}
 .services-heading{margin-bottom:10px}.services-heading h2{font-size:30px}
 .services-heading .section-label{font-size:9px;margin-bottom:10px}.all-services{font-size:11px}
 .service-cards{gap:12px}.service-card{height:200px}.service-card-copy{bottom:12px}
 .service-card h3{font-size:14px;margin-bottom:5px}.service-card p{font-size:10px}
 .service-card .line-icon{width:28px;height:28px;margin-bottom:6px}
 .closing-inner{min-height:190px;padding-block:25px;grid-template-columns:1fr 2fr 1fr;gap:17px}
 .closing-copy h2{font-size:27px}.closing-copy .section-label{font-size:8px;margin-bottom:10px}
 .closing-description{font-size:10px;margin-bottom:16px}
 .closing-copy .button{font-size:11px;padding:8px 23px;min-height:34px}
 .closing-values .line-icon{width:23px;height:23px;margin-bottom:9px}.closing-values span{font-size:11px}
 .reference-footer{padding:10px 0 20px}.reference-footer-top{gap:44px}.reference-footer nav{gap:24px;font-size:10px}
 .reference-footer-bottom{margin-top:20px}.reference-footer-bottom p{font-size:10px}.reference-footer-notes p{font-size:9px}
}
@media(max-width:360px){.reference-page .brand-lockup{width:200px}.reference-page .brand-lockup img{transform:translateY(1px)}.reference-hero h1{font-size:34px}.reference-hero .button-group{gap:10px}.reference-page .button{padding-inline:14px;font-size:11px}.about-collage{height:245px}}
@media(max-width:360px){.reference-page .brand-lockup{width:180px}.reference-page .brand-lockup img{transform:translateY(5px)}}
.reference-footer{color:var(--text)}


/* Latest supplied reference: compact composition with ivory planning and FAQ bands. */
.reference-page .header-inner { min-height: 82px; }
.reference-page .brand-lockup { height: 82px; width: 305px; }
.reference-page .brand-lockup img { transform: translateY(-20px); }
.reference-hero-inner { min-height: 388px; padding-block: 38px; }
.reference-hero h1 { font-size: 56px; line-height: .98; }
.reference-hero-copy .section-label { font-size: 10px; margin-bottom: 16px; }
.hero-brand { font-size: 10px; margin-bottom: 22px; }
.hero-handwriting { top: 35%; }
.feature-grid { padding-block: 24px; }
.feature-item h2 { font: 15px/1.3 var(--sans); }
.feature-item p { font-size: 12px; }
.reference-about-inner { min-height: 344px; padding-block: 22px; }
.about-collage { height: 300px; }
.reference-about h2 { font-size: 35px; margin-bottom: 22px; }
.about-description { font-size: 13px; }
.reference-services { padding-block: 24px 18px; }
.services-heading h2 { font-size: 34px; }
.service-card { height: 246px; }
.service-card h3 { font: 16px/1.3 var(--sans); }
.closing-inner { min-height: 206px; }

.planning-guide, .home-faq { background: #f6f2ea; color: #161914; position: relative; overflow: hidden; }
.planning-layout { display: grid; grid-template-columns: 1.15fr 2fr; align-items: center; gap: 55px; padding-block: 42px 32px; position: relative; z-index: 1; }
.planning-heading .section-label, .faq-heading .section-label { color: #a46819; font-size: 10px; letter-spacing: .31em; margin-bottom: 13px; }
.planning-heading h2, .faq-heading h2 { font: 36px/1.12 var(--serif); letter-spacing: -.025em; margin: 0 0 16px; }
.planning-heading h2:after, .faq-heading h2:after { content: ''; display: block; width: 34px; height: 2px; background: #d5a047; margin-top: 15px; }
.planning-intro, .faq-heading > p:not(.section-label) { font-size: 13px; line-height: 1.65; max-width: 390px; margin-bottom: 18px; }
.planning-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; list-style: none; margin: 0; padding: 0; }
.planning-steps li { position: relative; border: 1px solid #d7a758; border-radius: 50%; aspect-ratio: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 34px 20px 20px; text-align: center; }
.step-number { position: absolute; top: -24px; left: 50%; transform: translateX(-50%); width: 58px; height: 58px; border-radius: 50%; display: grid; place-items: center; background: linear-gradient(110deg,#f2dcb9,#f6cc89); border: 1px solid #e9c487; font: 24px var(--serif); }
.planning-steps .line-icon { width: 41px; height: 41px; color: #b87920; margin: 0 0 12px; }
.planning-steps h3 { font: 24px/1.2 var(--serif); margin-bottom: 11px; }
.planning-steps p { font-size: 12px; line-height: 1.5; margin: 0; max-width: 180px; }
.step-connector { position: absolute; left: calc(100% + 3px); top: 32%; color: #cd9a45; width: 28px; border-top: 1px solid #cd9a45; border-radius: 50%; }
.step-connector .arrow { position: absolute; top: -11px; right: -6px; width: 19px; }
.reference-page .guide-button { background: #0b0d0b; color: var(--gold); border: 1px solid #b78a41; border-radius: 0; cursor: pointer; }
.planning-full-guide summary { list-style: none; width: fit-content; }
.planning-full-guide summary::-webkit-details-marker { display: none; }
.planning-full-guide[open] summary .arrow { transform: rotate(90deg); }
.planning-full-guide ol { padding-left: 20px; margin: 24px 0 0; }
.planning-full-guide li { margin-bottom: 20px; padding-left: 4px; }
.planning-full-guide h3 { font-size: 19px; margin-bottom: 7px; }
.planning-full-guide li p { font-size: 12px; line-height: 1.75; margin: 0; }
.botanical { position: absolute; pointer-events: none; color: #dfb878; opacity: .65; width: 155px; height: 265px; }
.planning-guide > .botanical:first-child { left: -65px; bottom: -80px; transform: rotate(-18deg); }
.planning-guide > .botanical:last-child { right: -65px; bottom: -50px; transform: scaleX(-1) rotate(-15deg); }
.gallery-preview { background: #0b0d0b; padding-block: 20px 12px; }
.gallery-preview .services-heading { margin-bottom: 13px; }
.gallery-preview .section-label { margin-bottom: 5px; font-size: 10px; }
.gallery-preview-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 15px; }
.gallery-preview-grid a { display: block; aspect-ratio: 1.8; overflow: hidden; border: 1px solid #5a5140; }
.gallery-preview-grid img, .gallery-preview-grid .scene-atlas { width: 100%; height: 100%; object-fit: cover; transition: transform .25s; }
.gallery-preview-grid a:hover img, .gallery-preview-grid a:hover .scene-atlas { transform: scale(1.045); }
.gallery-preview-note { font-size: 10px; color: #b8b8aa; margin: 10px 0 0; }
.faq-layout { display: grid; grid-template-columns: 1.15fr 2fr; gap: 55px; padding-block: 26px 30px; }
.faq-heading { position: relative; padding-right: 40px; }
.faq-heading .botanical { right: -10px; bottom: -55px; width: 140px; z-index: 0; }
.faq-heading > :not(.botanical) { position: relative; z-index: 1; }
.faq-list { display: flex; flex-direction: column; gap: 7px; }
.faq-list details { border: 1px solid #d7d0c4; border-radius: 9px; background: #f5f2ec; }
.faq-list details[open] { border-color: #ddbe8b; background: #f6efe2; }
.faq-list summary { cursor: pointer; display: flex; align-items: center; gap: 10px; list-style: none; padding: 11px 18px; font: 600 13px/1.4 var(--sans); }
.faq-list summary::-webkit-details-marker { display: none; }
.question-mark { width: 14px; height: 14px; flex-shrink: 0; display: grid; place-items: center; background: #dfa94f; color: #fff8ec; clip-path: polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%); font-size: 9px; font-weight: 400; }
.faq-toggle { margin-left: auto; flex: 0 0 15px; height: 15px; position: relative; }
.faq-toggle:before, .faq-toggle:after { content: ''; background: #393b34; position: absolute; }
.faq-toggle:before { width: 13px; height: 1px; left: 1px; top: 7px; }
.faq-toggle:after { height: 13px; width: 1px; top: 1px; left: 7px; }
.faq-list details[open] .faq-toggle:after { display: none; }
.faq-list details[open] .faq-toggle:before { background: #b47b25; }
.faq-list details > p { margin: 0 40px 16px; font-size: 12px; line-height: 1.6; color: #3d4138; }
.reference-page .faq-expand { cursor: pointer; padding: 12px 22px; min-height: 40px; }
.reference-page .faq-expand[hidden] { display: none; }

@media(min-width:761px) and (max-width:1200px) {
 .reference-page .header-inner { min-height: 58px; }
 .reference-page .brand-lockup { height: 58px; width: 215px; }
 .reference-page .brand-lockup img { transform: translateY(-14px); }
 .reference-page .site-header nav { gap: 24px; }
 .reference-page .site-header nav a { font-size: 10px; padding-block: 9px; }
 .reference-page .header-plan { padding: 8px 16px; min-height: 32px; font-size: 10px; }
 .reference-hero-inner { min-height: 270px; padding-block: 27px; }
 .reference-hero h1 { font-size: 40px; line-height: .93; margin-bottom: 12px; }
 .reference-hero-copy .section-label { font-size: 8px; margin-bottom: 13px; }
 .hero-brand { font-size: 8px; margin-bottom: 17px; }
 .reference-page .reference-hero .button { padding: 8px 18px; min-height: 34px; font-size: 11px; }
 .hero-handwriting { font-size: 31px; }
 .feature-grid { padding-block: 14px; }
 .feature-item .line-icon { height: 27px; width: 27px; margin-bottom: 7px; }
 .feature-item h2 { font: 12px/1.3 var(--sans); margin-bottom: 3px; }
 .feature-item p { font-size: 10px; }
 .reference-about-inner { min-height: 237px; padding-block: 16px; }
 .about-collage { height: 215px; }
 .reference-about h2 { font-size: 27px; margin-bottom: 14px; }
 .reference-about .section-label { margin-bottom: 11px; }
 .about-description { font-size: 10px; margin-bottom: 16px; }
 .reference-about .button { min-height: 32px; padding: 8px 18px; font-size: 10px; }
 .reference-services { padding-block: 17px 13px; }
 .service-card { height: 180px; }
 .services-heading h2 { font-size: 28px; }
 .service-card h3 { font-size: 12px; }.service-card p { font-size: 9px; }
 .planning-layout, .faq-layout { gap: 36px; }
 .planning-layout { padding-block: 32px 24px; }
 .planning-heading h2, .faq-heading h2 { font-size: 28px; }
 .planning-heading .section-label, .faq-heading .section-label { font-size: 8px; margin-bottom: 10px; }
 .planning-intro, .faq-heading > p:not(.section-label) { font-size: 11px; margin-bottom: 13px; }
 .planning-steps { gap: 22px; }
 .planning-steps li { padding: 27px 12px 12px; }
 .step-number { width: 43px; height: 43px; top: -19px; font-size: 19px; }
 .planning-steps .line-icon { width: 31px; height: 31px; margin-bottom: 8px; }
 .planning-steps h3 { font-size: 19px; margin-bottom: 7px; }
 .planning-steps p { font-size: 10px; }
 .step-connector { width: 18px; }
 .gallery-preview { padding-top: 16px; }
 .gallery-preview-grid { gap: 11px; }
 .gallery-preview .section-label, .gallery-preview-note { font-size: 8px; }
 .gallery-preview .services-heading { margin-bottom: 8px; }
 .faq-layout { padding-block: 20px; }
 .faq-list { gap: 5px; }.faq-list summary { font-size: 11px; padding: 8px 14px; gap: 8px; }
 .faq-list details > p { font-size: 10px; margin: 0 34px 12px; }
 .faq-heading { padding-right: 25px; }
 .faq-heading .botanical { width: 110px; bottom: -52px; }
 .reference-page .faq-expand { font-size: 11px; padding: 8px 19px; min-height: 34px; }
 .closing-inner { min-height: 150px; padding-block: 22px; }
 .closing-copy h2 { font-size: 25px; }
}
@media(max-width:760px) {
 .reference-page .header-inner { min-height: 82px; }.reference-page .brand-lockup { width: 230px; height: 82px; }.reference-page .brand-lockup img { transform: translateY(-5px); }
 .reference-hero-inner { min-height: 480px; padding-block: 55px; }
 .reference-hero h1 { font-size: clamp(34px,7vw,48px); line-height: 1.04; }
 .reference-hero-copy .section-label { font-size: 8px; }.hero-brand { font-size: 9px; }
 .reference-about-inner { padding-block: 30px; }.about-collage { height: 280px; }
 .reference-about h2 { font-size: 32px; }.about-description { font-size: 13px; }
 .feature-grid { padding-block: 25px; }.feature-item h2 { font-size: 14px; }
 .feature-item p { font-size: 11px; }.service-card { height: 240px; }
 .planning-layout, .faq-layout { grid-template-columns: 1fr; gap: 30px; padding-block: 35px; }
 .planning-heading h2, .faq-heading h2 { font-size: 30px; }
 .planning-steps { grid-template-columns: 1fr; gap: 44px; justify-items: center; padding-top: 20px; }
 .planning-steps li { width: 220px; padding: 40px 25px 22px; }
 .planning-steps h3 { font-size: 23px; }.planning-steps p { font-size: 12px; }
 .step-number { width: 49px; height: 49px; font-size: 21px; }
 .step-connector { left: 50%; top: calc(100% + 13px); width: 24px; transform: translateX(-50%) rotate(90deg); }
 .gallery-preview { padding-block: 25px 18px; }.gallery-preview .services-heading { flex-direction: row; align-items: end; gap: 15px; }
 .gallery-preview .services-heading h2 { font-size: 27px; }
 .gallery-preview .all-services { font-size: 10px; gap: 8px; max-width: 105px; }
 .gallery-preview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }.gallery-preview-grid a:last-child { grid-column: 1/-1; aspect-ratio: 2.6; }
 .gallery-preview-note { font-size: 9px; }
 .faq-heading { padding-right: 40px; }.faq-heading .botanical { bottom: -25px; right: 0; height: 180px; width: 100px; }
 .faq-list summary { font-size: 12px; padding: 13px 12px; gap: 8px; }
 .faq-list details > p { font-size: 12px; margin: 0 15px 18px 34px; }
 .closing-inner { padding-block: 35px; }
}
@media(max-width:360px) { .reference-page .brand-lockup { width: 180px; }.reference-page .brand-lockup img { transform: translateY(5px); } }
@media(prefers-reduced-motion:reduce) { .gallery-preview-grid img,.gallery-preview-grid .scene-atlas { transition:none; } }
@media(min-width:761px) and (max-width:1200px) {
 .reference-hero-inner { min-height:253px; padding-block:20px; }
 .reference-hero h1 { font-size:38px; }
 .reference-hero-copy .section-label { margin-bottom:11px; }
 .hero-brand { line-height:1.65; margin-bottom:15px; }
 .reference-hero .button-group { gap:20px; }
 .reference-page .reference-hero .button { min-height:32px; padding-block:7px; }
 .planning-layout { padding-block:27px 23px; }
 .planning-heading h2:after, .faq-heading h2:after { margin-top:11px; }
 .planning-heading h2, .faq-heading h2 { margin-bottom:12px; }
 .reference-page .guide-button { padding:8px 20px; min-height:34px; }
}
/* Decorative clipping must not create an inner scroll area for anchor links. */
.planning-guide, .home-faq { overflow: clip; }
#planning-title, #faq-title { scroll-margin-top: 35px; }
