@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#29251f;--orange:#f15b24;--cream:#fbf7ef;--line:#ded6c8;--muted:#6a655c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--cream);color:var(--ink);font:16px 'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #945014;outline-offset:5px}.draft{background:#29251f;color:#fff2db;padding:9px 5%;font-size:10px;letter-spacing:1.7px;display:flex;justify-content:space-between}.draft span{letter-spacing:.3px}header{max-width:1440px;margin:auto;padding:27px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{text-decoration:none;font-size:11px;letter-spacing:3px;line-height:1.5}.wordmark strong{font-size:19px;letter-spacing:-.6px}.wordmark strong span{font-size:9px;vertical-align:top}nav{display:flex;align-items:center;gap:29px}nav a{text-decoration:none;font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--orange);color:#fff;border:0;border-radius:6px;padding:18px 24px;font-weight:700;font-size:14px;text-decoration:none}.btn:hover{background:#cd4414}.small{padding:13px 19px}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:5%;padding:70px 5% 80px;align-items:center}.eyebrow{font-weight:700;font-size:10px;letter-spacing:2px;margin:0 0 25px;color:#99502c}h1,h2,h3{font-family:'Manrope',sans-serif}h1{font-size:clamp(42px,4.8vw,73px);line-height:1.08;letter-spacing:-3.5px;margin:0 0 27px;font-weight:800}h1 em{color:var(--orange);font-style:normal}p{line-height:1.7}.intro{max-width:470px;color:var(--muted);font-size:16px}.actions{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}.text-link{font-size:12px;background:none;border:0;text-decoration:none;padding:0;font-weight:700}.micro{font-size:11px;color:var(--muted);margin-top:18px}.hero-art{position:relative;transform:rotate(2deg)}.hero-art img{width:100%;display:block;border-radius:12px;height:auto;object-fit:contain;box-shadow:15px 18px 0 #eddfc8}.art-label{position:absolute;bottom:-38px;left:12px;background:var(--cream);padding:17px 25px;box-shadow:0 6px 25px #30201620;border:1px solid var(--line);font-size:12px;font-weight:700;transform:rotate(-2deg);border-radius:5px}.dot{display:inline-block;width:8px;height:8px;background:var(--orange);border-radius:100%;margin-right:8px}.ribbon{padding:23px 5%;display:flex;gap:30px;justify-content:space-between;background:#f4e8d6;border-block:1px solid var(--line);font-size:10px;letter-spacing:1.6px;font-weight:700;align-items:center}.ribbon i{font-size:23px;color:var(--orange);font-style:normal}.section{max-width:1320px;margin:auto;padding:85px 5%}h2{font-size:clamp(32px,3.5vw,48px);line-height:1.15;letter-spacing:-2px;margin:0 0 25px}.section-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:10%}.section-heading .eyebrow{grid-column:1/-1}.section-heading>p:last-child{max-width:390px;color:var(--muted);align-self:center;margin:0}.services{margin-top:40px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.services article{padding:30px 25px 5px 0;margin-right:25px;border-right:1px solid var(--line)}.services article:last-child{border:0;margin:0}.num{color:#a35230;font-size:10px;letter-spacing:1.4px}h3{font-size:22px;letter-spacing:-.7px}.services p{font-size:14px;color:var(--muted);min-height:96px}.services button{color:#a83a12;margin-top:18px}.how{display:grid;grid-template-columns:1fr 1fr;background:#eee7dc;max-width:none;padding-inline:max(5%,calc((100vw - 1188px)/2));gap:12%}.how ol{padding:0;list-style:none;counter-reset:steps}.how li{counter-increment:steps;position:relative;padding:0 0 20px 52px;border-bottom:1px solid #d4c9b9;margin-bottom:25px}.how li:before{content:'0' counter(steps);position:absolute;left:0;font-size:12px;color:#a7502d;padding-top:3px}.how b{font-size:17px}.how p{font-size:14px;color:var(--muted);margin-bottom:0}.prep{text-align:center}.prep-grid{text-align:left;display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}.prep-grid p{font-size:14px;color:var(--muted)}.prep-grid b{display:inline-block;margin-bottom:7px;color:var(--ink)}.faq{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr;gap:10%}details{border-bottom:1px solid var(--line);padding:23px 0}summary{cursor:pointer;font-weight:600;font-size:15px}details p{font-size:14px;color:var(--muted)}.closing{background:var(--orange);color:white;text-align:center;padding:70px 20px}.closing .eyebrow{color:#ffe3bf}.closing h2{font-size:50px}.cream{background:var(--cream);color:var(--ink)}.cream:hover{background:#eee0c9}.closing>a{display:block;font-size:12px;margin-top:25px}footer{max-width:1320px;margin:auto;padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}footer p,footer a{font-size:12px}footer small{width:100%;border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:var(--muted)}dialog{border:0;background:var(--cream);color:var(--ink);border-radius:14px;padding:0;width:min(720px,calc(100% - 24px));max-height:92vh;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#211b17b3;backdrop-filter:blur(4px)}.wizard-top{padding:18px 28px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:1.5px}.wizard-top button{border:0;background:none;font-size:20px}.progress{background:#e5d9c8;height:4px}.progress>div{background:var(--orange);height:4px;transition:width .3s}#wizard{padding:30px}#wizard h2{font-size:31px;letter-spacing:-1px}#wizard .eyebrow{margin-bottom:12px}.hint{font-size:13px;color:var(--muted)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:25px 0}.fields label{display:block;font-size:12px;font-weight:600}.fields input,.fields select,.fields textarea{width:100%;padding:12px;background:#fffdfa;color:var(--ink);border:1px solid #cbbfae;border-radius:5px;margin-top:8px;min-width:0}.full{grid-column:1/-1}.check{display:flex!important;align-items:flex-start;gap:10px;line-height:1.6}.check input{width:auto;margin-top:5px}.wizard-actions{display:flex;justify-content:space-between;gap:15px;margin-top:30px}.back{border:1px solid var(--line);background:transparent;padding:13px 20px;border-radius:5px}.notice{padding:15px;background:#f8e5cf;border-left:3px solid var(--orange);font-size:13px;line-height:1.6}.error{color:#a22616;font-size:13px}.summary-list{display:grid;gap:12px;margin:25px 0}.summary-list div{border-bottom:1px solid var(--line);padding-bottom:10px}.summary-list dt{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}.summary-list dd{margin:4px 0;font-size:14px;white-space:pre-wrap}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:2px}@media(max-width:760px){.draft span{display:none}header{padding:20px 5%}nav a{display:none}nav{gap:0}.wordmark strong{font-size:16px}.hero{grid-template-columns:1fr;padding-top:40px;gap:45px}h1{letter-spacing:-2px}.hero-art{max-width:440px;justify-self:center;margin:0 15px}.ribbon{gap:15px;flex-wrap:wrap;justify-content:center}.ribbon span{font-size:8px}.ribbon i{display:none}.section{padding-block:55px}.section-heading,.how,.faq{grid-template-columns:1fr;gap:25px}.services,.prep-grid{grid-template-columns:1fr;gap:20px}.services article{border-right:0;border-bottom:1px solid var(--line);padding-bottom:25px;margin:0}.services p{min-height:0}.prep-grid{gap:0}.closing h2{font-size:37px}.fields{grid-template-columns:1fr}.full{grid-column:auto}#wizard{padding:22px}.btn{gap:15px}.wizard-actions .btn{font-size:12px}footer{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media print{body>*{display:none!important}dialog[open]{display:block!important;position:static;max-height:none;width:100%;box-shadow:none}.wizard-top,.progress,.wizard-actions,.notice{display:none!important}}
/* Separate section views and gentle motion — v0.6 */
[hidden]{display:none!important}.menu-toggle{display:none}nav a{position:relative}nav a[aria-current=page]{color:#ad3c14;font-weight:700}nav a:after{content:'';position:absolute;bottom:-8px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover:after,nav a[aria-current=page]:after{transform:scaleX(1)}
.page-section{min-height:55vh;padding-top:75px;padding-bottom:85px}.section-heading{margin-bottom:20px}.view-enter{animation:view-enter .55s cubic-bezier(.2,.7,.3,1) both}.hero-art{animation:art-enter .85s ease both;transition:transform .35s}.hero-art:hover{transform:rotate(0) translateY(-4px)}.btn{transition:transform .22s,box-shadow .22s,background .22s}.btn:hover{transform:translateY(-3px);box-shadow:0 9px 20px #b53d1725}.btn:active{transform:translateY(0)}.services article{transition:transform .3s,background .3s}.services article:hover{transform:translateY(-5px)}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease var(--reveal-delay,0ms),transform .6s ease var(--reveal-delay,0ms)}.reveal.in-view{opacity:1;transform:translateY(0)}details[open] p{animation:view-enter .3s ease both}.google-panel{margin-top:45px;padding:40px;background:#fffdfa;border:1px solid var(--line);border-radius:14px;max-width:850px;box-shadow:0 14px 50px #4b2c0d08}.google-label{display:flex;align-items:center;gap:14px;font-weight:700}.google-g{font:bold 34px Arial,sans-serif;color:#4285f4}.google-panel h3{font-size:26px}.google-panel p{color:var(--muted);max-width:650px}.google-panel .hint{font-size:11px;margin-top:25px}.closing{padding-block:55px}#wizard{animation:view-enter .25s ease}.menu-toggle:focus-visible{outline:3px solid var(--orange);outline-offset:4px}
@keyframes view-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes art-enter{from{opacity:0;transform:rotate(0) translateY(20px)}to{opacity:1;transform:rotate(2deg) translateY(0)}}
@media(max-width:1050px) and (min-width:761px){nav{gap:17px}nav a{font-size:11px}.wordmark strong{font-size:16px}}
@media(max-width:760px){header{flex-wrap:wrap;gap:20px}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:10px 14px;border-radius:5px;font-weight:600;color:var(--ink)}nav{display:none;flex-basis:100%;align-items:stretch;gap:0}nav.expanded{display:flex;flex-direction:column;animation:view-enter .25s ease}nav a{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}nav a:after{display:none}nav .btn{margin-top:15px;text-align:center;justify-content:center}.page-section{padding-top:45px;min-height:50vh}.google-panel{padding:25px;margin-top:25px}.google-panel .actions{align-items:flex-start;flex-direction:column}.closing{padding-block:45px}}
@media(prefers-reduced-motion:reduce){.view-enter,.hero-art,#wizard,details[open] p,nav.expanded{animation:none}.reveal{opacity:1;transform:none;transition:none}.btn,.hero-art,.services article,nav a:after{transition:none}.btn:hover,.hero-art:hover,.services article:hover{transform:none}}
@media print{[data-view][hidden]{display:none!important}}

.home-reviews{border-bottom:1px solid var(--line)}.home-reviews .section-heading{align-items:center}.home-reviews h2{font-size:clamp(30px,3.5vw,46px)}.home-review-body{margin-top:25px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px;background:#fffdfa;border:1px solid var(--line);border-radius:10px}.home-review-body p{margin:12px 0 0;font-size:14px}.home-review-body .hint{font-size:11px;color:var(--muted)}.home-review-body .btn{flex-shrink:0}@media(max-width:760px){.home-review-body{align-items:flex-start;flex-direction:column;padding:24px}.home-review-body .btn{font-size:12px}}
/* Interactive touches — v0.8 */
.btn,.quick-start :is(button,a){position:relative;overflow:hidden}.btn:focus-visible,.quick-start :is(button,a):focus-visible{outline:3px solid #a14a10;outline-offset:5px}.tap-feedback{position:absolute;width:12px;height:12px;margin:-6px;border-radius:50%;background:#fff7;pointer-events:none;animation:tap-feedback .55s ease-out forwards}.quick-start{margin-top:32px;border-top:1px solid var(--line);padding-top:20px;max-width:470px}.quick-start>span{font-size:11px;font-weight:700;color:var(--muted)}.quick-start>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.quick-start :is(button,a){border:1px solid #d8bba4;background:#fff9ee;color:#753812;padding:10px 12px;border-radius:30px;font-size:10px;font-weight:600;transition:background .2s,transform .2s,box-shadow .2s}.quick-start :is(button,a):hover{background:#ffe1c0;transform:translateY(-3px);box-shadow:0 5px 12px #71331215}.service-explore{border:0;border-block:1px solid var(--line);padding:15px 0;margin:20px 0 4px}.service-explore summary{display:flex;justify-content:space-between;gap:10px;font-size:12px;list-style:none;color:#8f3c16}.service-explore summary::-webkit-details-marker{display:none}.service-explore summary span{font-size:17px}.service-explore p{min-height:0!important;margin-bottom:0;font-size:12px}.services article{border-radius:8px;transition:background .25s,transform .25s,box-shadow .25s}.services article:hover{background:#fff9f0;box-shadow:0 14px 35px #723d0d0a}.hero-copy>.eyebrow{animation:text-arrive .5s ease-out both}.hero-copy h1{animation:text-arrive .7s .08s ease-out both}.hero-copy>.intro{animation:text-arrive .7s .18s ease-out both}.hero-copy>.actions{animation:text-arrive .7s .26s ease-out both}.quick-start{animation:text-arrive .7s .34s ease-out both}.home-review-body{position:relative;overflow:hidden;transition:border-color .3s,box-shadow .3s}.home-review-body:hover{border-color:#d28b56;box-shadow:0 14px 35px #ab4c1810}.home-review-body.review-arrived:before{content:'';position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,#f15b24,#ffc987);transform-origin:left;animation:review-line .8s ease-out both}.how li{transition:transform .25s,padding-left .25s}.how li:hover{transform:translateX(5px)}.faq summary{transition:color .2s}.faq summary:hover{color:#b44719}.faq details[open]{background:#fff9ef;border-radius:8px;padding-inline:15px}#booking[open]{animation:dialog-enter .25s ease-out}.wizard-actions .btn:hover{transform:translateY(-2px)}
@keyframes tap-feedback{to{transform:scale(65);opacity:0}}@keyframes text-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes review-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes dialog-enter{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.hero-copy>.eyebrow,.hero-copy h1,.hero-copy>.intro,.hero-copy>.actions,.quick-start,.home-review-body.review-arrived:before,#booking[open]{animation:none}.tap-feedback{display:none}.quick-start :is(button,a),.services article,.home-review-body,.how li,.faq summary{transition:none}.quick-start :is(button,a):hover,.how li:hover{transform:none}}

.launch-notice{max-width:1296px;margin:28px auto 0;padding:25px 30px;background:#fff0df;border:1px solid #efbc8b;border-left:6px solid var(--orange);border-radius:10px;display:flex;align-items:center;gap:30px}.launch-date{flex:0 0 170px;color:#9e3810;font-size:11px;font-weight:800;letter-spacing:1.3px;line-height:1.7}.launch-notice h2{font-size:23px;letter-spacing:-.6px;margin:0 0 7px}.launch-notice p{font-size:14px;line-height:1.65;margin:0;color:#5e4635}.launch-notice strong{color:#92320b}@media(max-width:1440px){.launch-notice{margin-inline:5%}}@media(max-width:600px){.launch-notice{display:block;padding:20px; margin-top:20px}.launch-date{display:block;margin-bottom:10px}.launch-notice h2{font-size:21px}}

/* Launch celebration: decorative, non-interactive bursts frame the centered message. */
.launch-notice{position:relative;isolation:isolate;overflow:hidden;display:block;text-align:center;padding:30px 110px;border-left:1px solid #efbc8b;border-top:4px solid var(--orange);background:linear-gradient(110deg,#ffe0bd,#fff1e2 35%,#fff1e2 65%,#ffe0bd)}
.launch-date{display:block;margin:0 0 10px}.launch-notice>div:not(.launch-fireworks){position:relative;z-index:1;max-width:830px;margin:auto}.launch-notice h2{text-align:center}.launch-fireworks{position:absolute;inset:0;pointer-events:none;z-index:0}.firework{position:absolute;width:1px;height:1px;color:#ed5a1c;animation:launch-burst 4.8s ease-out infinite;opacity:0}.burst-1{left:5%;top:30%;animation-delay:0s}.burst-2{right:5%;top:65%;animation-delay:1.2s;color:#fff}.burst-3{left:9%;top:82%;animation-delay:2.4s;color:#fff}.burst-4{right:9%;top:18%;animation-delay:3.6s}.firework i{position:absolute;left:0;top:0;width:5px;height:16px;border-radius:4px;background:currentColor;box-shadow:0 0 5px currentColor;transform:rotate(calc(var(--ray)*30deg)) translateY(-34px);transform-origin:50% 0}.firework i:nth-child(even){height:9px;transform:rotate(calc(var(--ray)*30deg)) translateY(-49px)}
@keyframes launch-burst{0%,5%{opacity:0;transform:scale(.15)}12%{opacity:1}35%{opacity:0;transform:scale(1.25)}100%{opacity:0;transform:scale(1.25)}}
@media(max-width:600px){.launch-notice{padding:28px 25px}.launch-notice>div:not(.launch-fireworks){z-index:1}.firework{scale:.6}.burst-1{left:3%;top:10%}.burst-2{right:3%;top:85%}.burst-3{left:2%;top:85%}.burst-4{right:2%;top:10%}}
@media(prefers-reduced-motion:reduce){.firework{animation:none;opacity:.4;transform:scale(.65)}}

/* Bolder launch fireworks, framed away from the message. */
.launch-notice{padding:38px 140px;background:linear-gradient(90deg,#ed641f 0%,#f78b3e 9%,#fff0df 20%,#fff0df 80%,#f78b3e 91%,#ed641f 100%)}
.firework{animation-name:launch-burst-bold;animation-duration:3.2s;color:#fff;filter:drop-shadow(0 0 7px #fff9)}
.firework i{width:7px;height:25px;box-shadow:0 0 9px currentColor;transform:rotate(calc(var(--ray)*30deg)) translateY(-43px)}
.firework i:nth-child(even){height:15px;transform:rotate(calc(var(--ray)*30deg)) translateY(-67px)}
.burst-1{left:6%;top:32%;animation-delay:-.4s}.burst-2{right:6%;top:65%;animation-delay:-1.2s;color:#fff}.burst-3{left:8%;top:78%;animation-delay:-2s;color:#ffcd7d}.burst-4{right:8%;top:22%;animation-delay:-2.8s;color:#ffcd7d}
@keyframes launch-burst-bold{0%{opacity:0;transform:scale(.12)}8%{opacity:1;transform:scale(.45)}25%{opacity:1;transform:scale(1.05)}55%{opacity:.85;transform:scale(1.35)}75%,100%{opacity:0;transform:scale(1.5)}}
@media(max-width:600px){.launch-notice{padding:44px 28px;background:linear-gradient(180deg,#f47b30,#fff0df 22%,#fff0df 78%,#f47b30)}.firework{scale:.7}.burst-1{left:7%;top:7%}.burst-2{right:7%;top:93%}.burst-3{left:7%;top:93%}.burst-4{right:7%;top:7%}}
@media(prefers-reduced-motion:reduce){.firework{animation:none;opacity:.8;transform:scale(.8)}}

/* Full particle fireworks against a night-sky frame. */
.launch-notice{min-height:320px;padding:48px 210px 58px;background:radial-gradient(ellipse at center,#623015 0%,#24130d 55%,#100e13 100%);border:1px solid #f88b3a;border-top:4px solid #f57829;box-shadow:0 9px 28px #753a1720;display:flex;flex-direction:column;justify-content:center;gap:0}
.launch-notice .launch-fireworks{width:100%;height:100%;z-index:0;display:block}.launch-notice .launch-date{position:relative;z-index:1;color:#ffe0bf;flex:none;margin:0 auto 12px;text-shadow:0 2px 8px #000}
.launch-notice>div:not(.launch-fireworks){background:#fff4e7f5;border:1px solid #ffc387;border-radius:12px;padding:22px 26px;box-shadow:0 0 45px #ff87232b;max-width:740px}.launch-notice h2{font-size:28px;color:#9e3810}.launch-notice p{color:#493224}
.fireworks-toggle{position:absolute;bottom:12px;right:16px;z-index:2;color:#fff1df;background:#24130dcf;border:1px solid #dca16d;border-radius:5px;padding:6px 10px;font-size:11px;min-height:30px}.fireworks-toggle:hover{background:#653215}
@media(max-width:950px){.launch-notice{padding:80px 65px 88px}.launch-notice h2{font-size:25px}}
@media(max-width:600px){.launch-notice{min-height:400px;padding:100px 18px 100px}.launch-notice>div:not(.launch-fireworks){padding:20px 16px}.launch-notice h2{font-size:22px}.launch-notice .launch-date{font-size:10px}.fireworks-toggle{bottom:10px}}

.quick-start a{text-decoration:none;display:inline-block}.booking-provider-note{font-size:12px;color:#fce7d5}

.contact-status{margin-top:20px;padding:15px 18px;border-left:3px solid var(--orange);background:#f4e8d6;border-radius:0 7px 7px 0;max-width:470px}.contact-status p{margin:0 0 8px;font-size:12px;color:var(--muted)}.contact-status strong{color:#753812}.contact-status a{font-size:14px;font-weight:700;text-underline-offset:3px}.footer-contact{display:flex;flex-direction:column;gap:10px}.footer-contact p{font-size:11px;margin:0}

/* Service details and client policies. */
.service-boundary{margin-top:35px;padding:25px 30px;background:#f4e8d6;border-left:4px solid var(--orange);border-radius:8px}.service-boundary h3{margin-top:0}.service-boundary p{font-size:14px;max-width:950px}.service-boundary a,.fee-source{font-size:11px}.services .service-explore p{line-height:1.85}.fee-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:35px}.fee-cards article{background:#fffaf2;border:1px solid var(--line);border-top:4px solid var(--orange);border-radius:10px;padding:26px}.fee-cards .eyebrow{display:block;margin-bottom:15px}.fee-cards h3{font-size:27px;letter-spacing:-.7px;margin:0 0 15px}.fee-cards small{display:block;font:500 12px 'DM Sans',sans-serif;letter-spacing:0;margin-top:8px}.fee-cards p{font-size:14px;color:var(--muted);margin-bottom:0}.fee-source{color:var(--muted);margin:18px 0 35px}.policy-block{padding:28px 0;border-top:1px solid var(--line)}.policy-block h3{font-size:23px;letter-spacing:-.6px;margin:0 0 16px}.policy-block p{font-size:14px;max-width:950px;color:#5c554b}.policy-table-wrap{overflow-x:auto}.policy-table{border-collapse:collapse;width:100%;margin:22px 0;font-size:14px;text-align:left}.policy-table caption{text-align:left;font-size:12px;color:var(--muted);padding-bottom:10px}.policy-table th,.policy-table td{padding:18px 20px;border:1px solid var(--line);line-height:1.6;vertical-align:top}.policy-table thead{background:#f4e8d6}.policy-table tbody th{width:60%;font-weight:500}.policy-example{padding:18px;background:#fff0df;border-radius:7px}.policy-pair{display:grid;grid-template-columns:1fr 1fr;gap:40px}.policy-contact{padding:25px 30px;background:#f4e8d6;border-radius:8px}.policy-contact h3{margin-top:0}.policy-contact p{font-size:14px}.policy-contact a{display:inline-block;margin-right:25px;font-size:14px;font-weight:700}.prep-grid{grid-template-columns:repeat(3,minmax(0,1fr))}nav{gap:22px}@media(max-width:1100px) and (min-width:761px){nav{gap:12px}nav a{font-size:11px}.wordmark strong{font-size:16px}}@media(max-width:760px){.fee-cards,.policy-pair,.prep-grid{grid-template-columns:1fr}.policy-pair{gap:0}.service-boundary{padding:22px}.policy-table th,.policy-table td{padding:13px 10px;font-size:12px}.policy-contact a{display:block;margin:14px 0}.policy-table tbody th{width:58%}}

.privacy-updated{font-size:12px;color:var(--muted);margin:25px 0}.privacy-summary{padding:22px 26px;background:#fff0df;border-left:4px solid var(--orange);border-radius:8px;max-width:950px}.privacy-summary p{font-size:14px;margin:8px 0 0}.privacy-content{max-width:950px;margin:30px 0}.privacy-content section{padding:25px 0;border-bottom:1px solid var(--line)}.privacy-content h3{font-size:22px;letter-spacing:-.5px;margin:0 0 15px}.privacy-content p,.privacy-links{font-size:14px;line-height:1.85;color:#5c554b}.privacy-content a{overflow-wrap:anywhere;text-underline-offset:3px}.privacy-links{padding-left:22px}.privacy-links li{margin:8px 0}@media(max-width:760px){.privacy-summary{padding:20px}.privacy-content h3{font-size:20px}}

.site-notices{max-width:1296px;margin:40px auto;padding:0 0 20px}.notary-legal-notice{padding:24px 28px;background:#fff0df;border:1px solid #d49b72;border-left:5px solid #c84917;border-radius:8px;margin:26px 0}.notary-legal-notice h3{margin:0 0 12px;font-size:18px;letter-spacing:0}.notary-legal-notice p{font-size:16px;font-weight:700;line-height:1.8;color:#34251c;margin:0;max-width:1100px}.accessibility-help{padding:20px 0}.accessibility-help h3{font-size:19px;margin:0 0 12px}.accessibility-help p{font-size:14px;line-height:1.8;max-width:950px;color:#5c554b}.accessibility-help a{overflow-wrap:anywhere;text-underline-offset:3px}@media(max-width:1440px){.site-notices{margin-inline:5%}}@media(max-width:760px){.notary-legal-notice{padding:20px}.notary-legal-notice p{font-size:14px}}

.meeting-locations{border-bottom:1px solid var(--line)}.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:35px}.location-grid article{padding:27px;background:#fffaf2;border:1px solid var(--line);border-top:3px solid var(--orange);border-radius:10px;transition:transform .2s,box-shadow .2s}.location-grid article:hover{transform:translateY(-3px);box-shadow:0 10px 26px #9c4b1510}.location-label{font-size:10px;letter-spacing:1.3px;font-weight:700;color:#99502c}.location-grid h3{font-size:21px;line-height:1.35;letter-spacing:-.5px;margin:18px 0 12px}.location-grid p{font-size:14px;color:var(--muted);margin-bottom:0}.facility-prep{margin-top:26px;padding:27px 30px;background:#f4e8d6;border-radius:10px;border-left:4px solid var(--orange)}.facility-prep h3{margin:0 0 15px;font-size:22px}.facility-prep p{font-size:14px;max-width:1000px}.facility-prep .text-link{display:inline-block;margin-top:7px}@media(max-width:950px){.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.location-grid{grid-template-columns:1fr}.location-grid article{padding:23px}.facility-prep{padding:23px}.facility-prep h3{font-size:20px}}@media(prefers-reduced-motion:reduce){.location-grid article{transition:none}.location-grid article:hover{transform:none}}

.notary-legal-notice p.notary-notice-intro{font-weight:400;line-height:1.65;margin-bottom:16px}

.service-guide{margin:22px 0;padding:24px;background:#fffaf3;border:1px solid #e4c9ae;border-radius:12px}.service-guide .guide-intro{font-size:14px;color:#5b5146}.service-guide h3{font-size:23px;line-height:1.35;letter-spacing:-.5px;margin:10px 0}.service-guide p{max-width:100%;font-size:15px}.service-guide .guide-step{font-size:11px;font-weight:800;letter-spacing:1.5px;color:#9b3c18;margin-top:24px}.guide-choices{display:grid;gap:10px;margin:20px 0}.guide-choice{width:100%;text-align:left;background:#fff;border:1px solid #d9b99a;border-radius:8px;padding:16px;color:#33271d;transition:background .15s,border-color .15s}@media(hover:hover) and (pointer:fine){.guide-choice:hover{background:#fff4e9;border-color:#b4461d}}.guide-choice strong{font-size:15px;line-height:1.5;display:block}.guide-choice span{display:block;font-size:13px;line-height:1.6;margin-top:5px;color:#665547}.guide-example,.guide-next{padding:16px 18px;margin:16px 0;border-radius:8px;background:#f7ead9}.guide-next{background:#fff0e4;border-left:4px solid #c84917}.service-guide .guide-example p,.service-guide .guide-next p{margin:7px 0 0}.service-guide .guide-confirm,.service-guide .guide-launch{font-size:13px;line-height:1.7}.guide-controls{display:flex;gap:18px;margin-top:24px;padding-top:18px;border-top:1px solid #e4c9ae}.guide-controls button{background:none;border:0;color:#99380f;font-weight:700;padding:8px 0}.service-guide h3:focus{outline:none}@media(max-width:600px){.service-guide{padding:18px}.service-guide h3{font-size:20px}}

.prepare-checks{display:grid;gap:14px;margin:16px 0 24px}.prepare-checks label{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.65;cursor:pointer}.prepare-checks input{flex:none;width:19px;height:19px;margin:3px 0 0;accent-color:#c84917}.prepare-checks input:focus-visible{outline:3px solid #945014;outline-offset:3px}.service-guide h4{font-size:17px;margin:24px 0 12px}.service-guide .prepare-hint{font-size:12px;color:#6a5543}.guide-choice[aria-pressed="true"]{border:2px solid #b4461d;background:#ffead7}

.fee-count-label{display:block;font-weight:700;font-size:14px;margin:20px 0 8px}#fee-count{display:block;width:100%;max-width:340px;padding:13px;border:1px solid #bda58f;border-radius:6px;background:#fff;color:#29251f}#fee-count:focus-visible{outline:3px solid #945014;outline-offset:3px}.fee-error{color:#9a2814;font-weight:700}.fee-breakdown{margin:24px 0}.fee-breakdown>div{display:flex;align-items:flex-start;gap:20px;justify-content:space-between;padding:16px 0;border-bottom:1px solid #e4c9ae}.fee-breakdown dt{font-weight:700;font-size:16px}.fee-breakdown small{display:block;font-weight:400;font-size:13px;line-height:1.6;margin-top:5px}.fee-breakdown dd{margin:0;white-space:nowrap;font-weight:700;font-size:18px}.fee-subtotal{padding:20px;background:#34271e;color:#fff8ef;border-radius:8px;display:grid;gap:10px}.fee-subtotal strong{font-size:30px}.fee-subtotal small{font-size:13px;line-height:1.7}.service-guide ul{padding-left:20px;line-height:1.7}.service-guide li{margin:12px 0}

/* Compact, readable shared legal notice. */
.site-notices .notary-legal-notice{padding:16px 18px;margin:18px 0;background:#f8f0e5;border:1px solid #d9c5ad;border-left:3px solid #c84917;border-radius:5px}.site-notices .notary-legal-notice h3{font-size:14px;margin:0 0 8px}.site-notices .notary-legal-notice p{font-size:14px;line-height:1.6;max-width:none}.site-notices .notary-legal-notice p.notary-notice-intro{font-size:13px;line-height:1.6;margin-bottom:8px}

/* Shared final page item: compact legal notice. */
.bottom-notary-notice{max-width:1296px;margin:0 auto;padding:16px 0 24px;border-top:1px solid var(--line)}.bottom-notary-notice .notary-legal-notice{padding:0;margin:0;background:transparent;border:0;border-radius:0}.bottom-notary-notice .notary-legal-notice h3{font-size:12px;line-height:1.5;margin:0 0 6px;letter-spacing:0}.bottom-notary-notice .notary-legal-notice p{font-size:13px;line-height:1.6;font-weight:600;color:#34251c;max-width:none}.bottom-notary-notice .notary-legal-notice p.notary-notice-intro{font-size:12px;line-height:1.6;font-weight:400;margin:0 0 6px}@media(max-width:1440px){.bottom-notary-notice{margin-inline:5%}}

.bottom-notary-notice{border-top:0}.bottom-notary-notice .notary-legal-notice{padding:14px 18px;background:#fff0df;border:1px solid #d9b89a;border-left:3px solid #c84917;border-radius:7px}

/* Keep the closing contact action proportional to its label. */
.closing>a.btn{display:inline-flex;width:auto;max-width:100%;min-width:240px;min-height:60px;justify-content:center;padding:18px 32px;margin:8px auto 0;font-size:18px;line-height:1.35;box-shadow:0 4px 12px #7b260f18}.closing .booking-provider-note{max-width:660px;margin:18px auto 0;line-height:1.7}@media(max-width:480px){.closing>a.btn{min-width:220px;min-height:56px;font-size:17px;padding:16px 28px}}

/* Touch browsers must not carry a hover highlight into the next question. */
@media(hover:none),(pointer:coarse){.guide-choice:hover:not([aria-pressed="true"]){background:#fff;border-color:#d9b99a}}
.guide-choice[aria-pressed="true"] strong:after{content:" — Selected";font-size:12px;font-weight:600}

.service-guide ul.prepare-list{padding-left:22px;margin:16px 0 24px;list-style:disc}.service-guide ul.prepare-list li{padding-left:3px;margin:12px 0;font-size:15px;line-height:1.7}.prepare-list li::marker{color:#c84917}

/* Shared brand image and mobile homepage reading order. */
header .brand-logo{display:block;flex:0 0 auto;width:144px;line-height:0;text-decoration:none}header .brand-logo img{display:block;width:100%;height:auto;object-fit:contain;border-radius:6px}header{gap:24px}@media(max-width:1100px) and (min-width:761px){header .brand-logo{width:120px}}@media(max-width:760px){header .brand-logo{width:126px}.hero-art{order:-1;margin:0 15px 30px;max-width:440px;width:calc(100% - 30px)}.hero-copy{order:0}}

/* Horizontal brand banner on interior pages; Home already has its feature artwork. */
header .brand-logo{display:flex;align-items:center;gap:18px;width:360px;max-width:100%;padding:10px 16px 10px 10px;background:#fff0df;border:1px solid #e2c6a8;border-radius:8px}header .brand-logo img{width:112px;height:auto;flex:none}.brand-banner-name{display:flex;flex-direction:column;gap:5px;line-height:1.25;color:#34251c;white-space:nowrap}.brand-banner-name>span{font-size:12px;letter-spacing:3px}.brand-banner-name strong{font-size:22px;letter-spacing:-.7px}.brand-banner-name small{font-size:8px;letter-spacing:1.1px;color:#9b3c18}body[data-page="home"] header .brand-logo{display:none}body[data-page="home"] header{justify-content:flex-end}header{flex-wrap:wrap}header nav{margin-left:auto}@media(max-width:1100px) and (min-width:761px){header .brand-logo{width:320px}.brand-banner-name strong{font-size:19px}header .brand-logo img{width:96px}}@media(max-width:760px){header .brand-logo{width:calc(100% - 110px);gap:10px;padding:8px;min-width:0}header .brand-logo img{width:64px}.brand-banner-name{gap:4px;white-space:normal}.brand-banner-name>span{font-size:9px;letter-spacing:1px}.brand-banner-name strong{font-size:14px;letter-spacing:-.3px}.brand-banner-name small{display:none}header{gap:12px}body[data-page="home"] header{justify-content:flex-end}}

/* Interior pages only: larger brand and animated opening announcement. */
.interior-opening{display:none}body[data-page]:not([data-page="home"])>.draft{display:none}body[data-page]:not([data-page="home"]) .interior-opening{display:flex;position:relative;min-height:142px;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at center,#54250f,#241b16 75%);color:#fff3df;border-bottom:3px solid #f15b24;padding:20px 150px 30px;text-align:center}.interior-opening-copy{position:relative;z-index:1}.interior-opening-copy p{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 8px}.interior-opening-copy strong{display:block;font-size:clamp(23px,3vw,34px);line-height:1.2}.interior-opening-copy span{display:block;font-size:12px;line-height:1.6;margin-top:8px;color:#f4d3b3}.announcement-sparks{position:absolute;inset:0;pointer-events:none}.announcement-burst{position:absolute;width:115px;height:115px;color:#ff943b;filter:drop-shadow(0 0 5px #ff6b20);animation:announcement-bloom 4.8s ease-out infinite}.burst-a{left:4%;top:5px}.burst-b{left:17%;top:55px;width:68px;height:68px;color:#fff3df;animation-delay:-2.2s}.burst-c{right:4%;top:5px;color:#fff3df;animation-delay:-1.3s}.burst-d{right:17%;top:55px;width:68px;height:68px;animation-delay:-3.4s}.announcement-pause{position:absolute;right:16px;bottom:8px;border:1px solid #b88054;background:#2c1a10;color:#ffe5c4;font-size:10px;padding:4px 8px;border-radius:4px;z-index:2}.interior-opening.is-paused .announcement-burst{animation-play-state:paused}@keyframes announcement-bloom{0%,100%{transform:scale(.65) rotate(-8deg);opacity:.25}25%{transform:scale(1) rotate(0);opacity:1}75%{transform:scale(1.13) rotate(4deg);opacity:.55}}
body[data-page]:not([data-page="home"]) header .brand-logo{width:500px;gap:22px;padding:12px 22px 12px 12px}body[data-page]:not([data-page="home"]) header .brand-logo img{width:154px}body[data-page]:not([data-page="home"]) .brand-banner-name>span{font-size:15px;letter-spacing:4px}body[data-page]:not([data-page="home"]) .brand-banner-name strong{font-size:31px}body[data-page]:not([data-page="home"]) .brand-banner-name small{font-size:10px;letter-spacing:1.4px}
@media(max-width:1100px) and (min-width:761px){body[data-page]:not([data-page="home"]) header .brand-logo{width:460px}body[data-page]:not([data-page="home"]) header nav{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:760px){body[data-page]:not([data-page="home"]) .interior-opening{min-height:150px;padding:24px 55px 34px}.interior-opening-copy span{font-size:10px}.announcement-burst{width:72px;height:72px}.burst-a{left:-15px;top:15px}.burst-b{left:4%;top:88px;width:45px;height:45px}.burst-c{right:-15px;top:15px}.burst-d{right:4%;top:88px;width:45px;height:45px}body[data-page]:not([data-page="home"]) header .brand-logo{width:calc(100% - 110px);gap:10px;padding:8px}body[data-page]:not([data-page="home"]) header .brand-logo img{width:76px}body[data-page]:not([data-page="home"]) .brand-banner-name>span{font-size:9px;letter-spacing:1px}body[data-page]:not([data-page="home"]) .brand-banner-name strong{font-size:16px}body[data-page]:not([data-page="home"]) .brand-banner-name small{display:none}}
@media(prefers-reduced-motion:reduce){.announcement-burst{animation:none;opacity:.65}.announcement-pause{display:none}}

/* Extend the interior logo horizontally as requested. */
@media(min-width:1101px){body[data-page]:not([data-page="home"]) header{max-width:1800px;padding-inline:3%;gap:26px}body[data-page]:not([data-page="home"]) header .brand-logo{width:600px;gap:24px;padding-right:28px}body[data-page]:not([data-page="home"]) header .brand-logo img{width:180px;height:auto;object-fit:contain}}
@media(min-width:761px) and (max-width:1100px){body[data-page]:not([data-page="home"]) header .brand-logo{width:520px}body[data-page]:not([data-page="home"]) header .brand-logo img{width:160px;height:auto;object-fit:contain}}

/* Use the original high-resolution artwork without distortion. */
body[data-page]:not([data-page="home"]) header .brand-logo{background:linear-gradient(110deg,#fff8ee,#ffead5);border-color:#dfb895;box-shadow:0 3px 12px #753b1210}body[data-page]:not([data-page="home"]) header .brand-logo img{image-rendering:auto;object-fit:contain;border-radius:6px} @media(min-width:1101px){body[data-page]:not([data-page="home"]) header .brand-logo{gap:28px;padding:12px 28px 12px 12px}}

/* A friendly welcome beneath the interior-page brand. */
body[data-page]:not([data-page="home"]) header .brand-logo{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:22px;row-gap:8px}
body[data-page]:not([data-page="home"]) header .brand-logo img{grid-column:1;grid-row:1/3}
body[data-page]:not([data-page="home"]) .brand-banner-name{grid-column:2;grid-row:1;align-self:end}
body[data-page]:not([data-page="home"]) .brand-welcome{grid-column:2;grid-row:2;align-self:start;font-size:13px;line-height:1.5;color:#70452f;font-weight:400;letter-spacing:0;white-space:normal}
@media(max-width:760px){body[data-page]:not([data-page="home"]) header .brand-logo{column-gap:10px;row-gap:10px}body[data-page]:not([data-page="home"]) header .brand-logo img{grid-row:1}body[data-page]:not([data-page="home"]) .brand-banner-name{align-self:center}body[data-page]:not([data-page="home"]) .brand-welcome{grid-column:1/-1;font-size:12px;line-height:1.45}}

/* Interior masthead: artwork, wordmark and welcome each have room to breathe. */
body[data-page]:not([data-page="home"]) header{max-width:1440px;margin-inline:auto;padding:26px 4% 18px;gap:20px}
body[data-page]:not([data-page="home"]) header .brand-logo{width:100%;max-width:none;display:grid;grid-template-columns:170px minmax(260px,1fr) minmax(250px,330px);gap:32px;padding:0 0 24px;background:transparent;border:0;border-bottom:1px solid #decab6;border-radius:0;box-shadow:none}
body[data-page]:not([data-page="home"]) header .brand-logo img{grid-column:1;grid-row:1;width:170px;height:auto;border-radius:12px;box-shadow:0 5px 18px #733b1718}
body[data-page]:not([data-page="home"]) .brand-banner-name{grid-column:2;grid-row:1;align-self:center;gap:9px;white-space:normal}
body[data-page]:not([data-page="home"]) .brand-banner-name>span{font-size:14px;letter-spacing:4px;color:#71442c}
body[data-page]:not([data-page="home"]) .brand-banner-name strong{font-size:clamp(30px,3.3vw,43px);line-height:1.02;letter-spacing:-1.4px;color:#34251c}
body[data-page]:not([data-page="home"]) .brand-banner-name small{display:block;font-size:14px;line-height:1.5;letter-spacing:0;color:#b1481e;text-transform:none;font-weight:600}
body[data-page]:not([data-page="home"]) .brand-welcome{grid-column:3;grid-row:1;align-self:center;padding:4px 0 4px 26px;border-left:2px solid #f15b24;font-size:17px;line-height:1.65;color:#704d38;text-wrap:pretty}
body[data-page]:not([data-page="home"]) header nav{width:100%;margin:0;justify-content:center;gap:28px}
@media(min-width:761px) and (max-width:1000px){body[data-page]:not([data-page="home"]) header .brand-logo{grid-template-columns:140px minmax(0,1fr);gap:20px}body[data-page]:not([data-page="home"]) header .brand-logo img{width:140px;grid-row:1/3}body[data-page]:not([data-page="home"]) .brand-welcome{grid-column:2;grid-row:2;padding:0;border:0;font-size:15px}body[data-page]:not([data-page="home"]) header nav{gap:20px}}
@media(max-width:760px){body[data-page]:not([data-page="home"]) header{padding:22px 5% 16px;gap:14px}body[data-page]:not([data-page="home"]) header .brand-logo{grid-template-columns:90px minmax(0,1fr);gap:15px;padding-bottom:18px;width:100%}body[data-page]:not([data-page="home"]) header .brand-logo img{width:90px;grid-row:1;border-radius:8px}body[data-page]:not([data-page="home"]) .brand-banner-name{gap:5px}body[data-page]:not([data-page="home"]) .brand-banner-name>span{font-size:10px;letter-spacing:2px}body[data-page]:not([data-page="home"]) .brand-banner-name strong{font-size:clamp(20px,5.5vw,30px);letter-spacing:-.6px}body[data-page]:not([data-page="home"]) .brand-banner-name small{font-size:11px;letter-spacing:0}body[data-page]:not([data-page="home"]) .brand-welcome{grid-column:1/-1;grid-row:2;font-size:14px;line-height:1.6;padding:0 0 0 13px;border-left:2px solid #f15b24}body[data-page]:not([data-page="home"]) header .menu-toggle{margin-left:auto}body[data-page]:not([data-page="home"]) header nav{gap:0}}

/* Home navigation sits centered below the launch announcement. */
body[data-page="home"] header{justify-content:center;margin-top:20px}
body[data-page="home"] header nav{margin-inline:auto;justify-content:center}
@media(max-width:760px){body[data-page="home"] header{margin-top:10px}body[data-page="home"] header .menu-toggle{margin-inline:auto}}

/* The interior announcement shares the homepage's particle fireworks. */
.interior-opening .launch-fireworks{width:100%;height:100%;display:block;z-index:0}
.interior-opening-copy{text-shadow:0 2px 8px #1e100b;background:radial-gradient(ellipse,#301b10e8 45%,#301b1000 74%);padding:4px 24px;border-radius:12px}
@media(prefers-reduced-motion:reduce){.interior-opening .announcement-pause{display:block}}

/* Keep the mobile service message readable and its banner items distinct. */
.ribbon>span:first-child,.meeting-locations .section-heading>.eyebrow{text-transform:uppercase}
@media(max-width:760px){
 .ribbon{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:14px 5%;text-align:center}
 .ribbon>span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 12px;font-size:11px;line-height:1.5;letter-spacing:.3px;text-wrap:balance}
 .ribbon>span:nth-of-type(even){border-left:1px solid #d7c4ac}
 .ribbon>span:nth-of-type(n+3){border-top:1px solid #d7c4ac}
 .ribbon>span:first-child{text-transform:none;font-size:14px;letter-spacing:0}
 .ribbon>i{display:none}
 .meeting-locations .section-heading>.eyebrow{text-transform:none;font-size:14px;letter-spacing:0;line-height:1.5}
}
