@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f8f7f0;--ink:#243c31;--muted:#626c62;--line:#d9ddd1;--orange:#bd623e;--pale:#e9eddf;--cream:#f7efcd;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit}button,a,input,select,summary,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.02}h3{font-size:23px;font-weight:500;letter-spacing:-.035em}em{font-weight:400}svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.symbol-bank{width:0;height:0;position:absolute}.section-wrap{width:min(1220px,calc(100% - 112px));margin:auto}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.15em;line-height:1.5}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip-link{position:fixed;top:-70px;left:16px;background:var(--ink);color:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.topline{padding:9px 56px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.07em}.topline>span:last-child{font-size:9px;letter-spacing:.12em;display:flex;align-items:center;gap:10px}.tiny-dot{height:3px;width:3px;background:var(--orange);border-radius:50%}.site-header{position:sticky;top:0;background:rgba(248,247,240,.96);backdrop-filter:blur(12px);z-index:20;border-bottom:1px solid transparent}.nav-wrap{width:min(1332px,calc(100% - 112px));margin:auto;height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{font-family:var(--serif);font-size:38px;letter-spacing:-.05em;line-height:1;white-space:nowrap}.wordmark>span:not(.brand-dot){font-style:italic;color:var(--orange);margin:0 1px}.brand-dot{color:var(--orange)}nav{display:flex;gap:30px;margin-left:auto;margin-right:20px;font-size:12px}nav a:hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:4px;padding:17px 23px;display:inline-flex;align-items:center;justify-content:center;gap:24px;font-size:12px;font-weight:500;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#3b5546;transform:translateY(-2px)}.button.small{padding:13px 18px;font-size:11px;gap:20px}.button .icon{width:18px;height:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center;padding-top:24px;padding-bottom:66px;min-height:680px}.hero-copy{padding-bottom:8px}.hero .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--orange)}h1{font-size:clamp(60px,5.7vw,86px);line-height:1.025}h1 em{color:var(--orange)}.hero-description{font-size:15px;color:var(--muted);max-width:380px;margin-top:27px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:30px}.text-link{font-size:11px;display:flex;align-items:center;gap:14px;white-space:nowrap}.text-link span{font-size:19px}.hero-price{margin-top:40px;display:flex;align-items:center;gap:15px}.hero-price .glasses{width:36px;height:30px;color:var(--orange)}.hero-price strong{font-size:12px;font-weight:500;display:block}.hero-price strong span{font-weight:400;color:var(--muted)}.hero-price small{display:block;color:var(--muted);font-size:10px;margin-top:2px}.hero-visual{position:relative;padding:0 0 26px 0;min-width:0}.hero-image{height:566px;width:100%;object-fit:cover;border-radius:110px 6px 6px 6px;object-position:50% 58%}.hello-stamp{position:absolute;right:-20px;top:25px;background:var(--cream);border:1px solid #e2d7b6;border-radius:50%;width:106px;height:106px;transform:rotate(12deg);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 18px #243c310a}.hello-stamp span{font-size:9px;letter-spacing:.15em}.hello-stamp strong{font-size:25px;line-height:1.4;font-weight:400;letter-spacing:.1em}.image-note{position:absolute;left:-34px;bottom:63px;background:var(--paper);padding:22px 24px;width:270px;box-shadow:0 8px 24px #0000000c;transform:rotate(-3deg)}.note-number{font-size:8px;letter-spacing:.13em;color:var(--muted)}.image-note p{font-family:var(--serif);font-size:26px;line-height:1.15;letter-spacing:-.02em;margin-top:10px}.image-note>.icon{position:absolute;right:16px;top:22px;width:17px;height:17px;color:var(--orange)}.image-caption{position:absolute;right:0;bottom:0;font-size:9px;color:var(--muted)}.promise-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-around;gap:20px;font-size:12px}.promise-strip span{display:flex;align-items:center;gap:10px}.promise-strip .icon{width:15px;height:15px;color:var(--orange)}.eyewear-section{padding-top:100px;padding-bottom:92px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:17px}h2{font-size:clamp(43px,4.2vw,60px)}.section-heading>p{max-width:340px;color:var(--muted);font-size:13px;line-height:1.8;margin-bottom:5px}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.price-card{border:1px solid var(--line);padding:32px 36px 0;border-radius:6px;background:#fcfbf6}.pair-card{background:var(--pale);border-color:var(--pale)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;height:30px}.card-top .glasses{width:37px;height:28px;color:var(--orange)}.two-pairs{position:relative;display:block;width:60px;height:32px}.two-pairs .icon{position:absolute;left:0;top:-5px}.two-pairs .icon:last-child{left:20px;top:7px}.price{font-family:var(--serif);font-size:64px;letter-spacing:-.04em;line-height:1.1;margin-top:16px}.price>span{font-size:15px;font-family:var(--sans);letter-spacing:0}.price-sub{font-size:11px;color:var(--muted);margin-top:8px}.check-list{list-style:none;padding:23px 0 24px;margin:0;color:var(--muted);font-size:12px}.check-list li{position:relative;padding-left:20px;margin:9px 0}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--ink)}.card-button{width:100%;background:none;border:0;border-top:1px solid #ccd1c3;color:var(--ink);padding:22px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px}.card-button:hover{color:var(--orange)}.card-button .icon{width:18px;height:18px}.pricing-note{font-size:10px;color:var(--muted);max-width:950px;line-height:1.8;margin-top:21px}.how-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.05fr;gap:95px;padding-top:75px;padding-bottom:90px}.how-heading .eyebrow{margin-bottom:22px}.how-heading em{color:#788568}.steps article{display:flex;gap:26px;padding:23px 0;border-bottom:1px solid var(--line)}.steps article:first-child{padding-top:0}.steps article:last-child{border:0;padding-bottom:0}.step-number{font-family:var(--serif);font-size:30px;color:var(--orange);line-height:1.1}.steps h3{font-size:17px;margin-bottom:7px;letter-spacing:-.02em}.steps p{font-size:12px;color:var(--muted);line-height:1.8}.arrival-section{background:var(--ink);color:var(--paper);overflow:hidden}.arrival-inner{padding-top:80px;padding-bottom:80px;display:grid;grid-template-columns:1fr 1.15fr;gap:96px;align-items:center}.arrival-graphic{position:relative;text-align:center;padding:0 20px}.arrival-ticket{width:290px;max-width:100%;margin:auto;background:var(--cream);color:var(--ink);padding:26px 30px 24px;border-radius:100px 100px 8px 8px;transform:rotate(-7deg);box-shadow:14px 14px 0 #ffffff0c;position:relative}.ticket-top{display:flex;justify-content:center;gap:35px;align-items:center;padding-top:26px;font-size:10px;letter-spacing:.12em}.ticket-top .icon{width:27px;height:27px}.airport-code{font-family:var(--serif);font-size:104px;line-height:1.2;letter-spacing:-.04em;display:block;margin-top:10px}.ticket-caption{font-size:8px;letter-spacing:.18em;display:block}.ticket-dash{border-top:1px dashed #9d9e84;margin:28px -30px 25px;position:relative}.ticket-dash:before,.ticket-dash:after{content:'';position:absolute;width:20px;height:20px;background:var(--ink);top:-10px;border-radius:50%}.ticket-dash:before{left:-10px}.ticket-dash:after{right:-10px}.ticket-route{display:flex;flex-direction:column;gap:4px;font-family:var(--serif);font-size:28px;line-height:1.3}.ticket-route span:nth-child(2){font-family:var(--sans);font-size:25px;color:var(--orange)}.ticket-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;border-top:1px solid #d4cda9;text-align:left;font-size:8px;line-height:1.5;letter-spacing:.13em}.ticket-sun{font-size:37px;color:var(--orange);line-height:1}.arrival-graphic-note{display:block;font-family:var(--serif);font-size:21px;font-style:italic;margin-top:34px;color:#c9d4bb}.arrival-copy .eyebrow{color:#b7c7aa;margin-bottom:22px}.arrival-copy h2{font-size:62px}.arrival-copy h2 em{color:#d5dfbb}.arrival-copy>p:not(.eyebrow):not(.arrival-scope){font-size:13px;line-height:1.9;color:#d0d9ce;max-width:410px;margin-top:22px}.arrival-prices{display:flex;gap:48px;margin-top:29px}.arrival-prices span{display:block;font-size:8px;letter-spacing:.14em;color:#c4ceb7}.arrival-prices strong{font-weight:400;font-size:24px;letter-spacing:-.035em;display:block;margin-top:3px}.arrival-scope{font-size:10px;line-height:1.8;color:#c4cebc;margin-top:15px;max-width:420px}.button.cream{background:var(--cream);color:var(--ink);border-color:var(--cream);margin-top:26px}.button.cream:hover{background:#fff9e5}.planner-section{padding-top:100px;padding-bottom:100px;display:grid;grid-template-columns:1fr 1.05fr;gap:110px}.planner-intro>.eyebrow{margin-bottom:20px}.planner-intro h2 em{color:var(--orange)}.planner-intro>p:not(.eyebrow){margin-top:20px;font-size:13px;color:var(--muted);max-width:340px}.estimate-card{border-top:1px solid var(--line);padding-top:24px;margin-top:34px;max-width:360px}.estimate-total{margin-top:7px;display:flex;align-items:baseline;gap:9px}.estimate-total>span{font-size:13px}.estimate-total strong{font-family:var(--serif);font-size:60px;line-height:1.2;letter-spacing:-.04em;font-weight:400}.estimate-lines{margin-top:10px;font-size:11px}.estimate-lines>div{display:flex;justify-content:space-between;gap:16px;margin-top:6px}.estimate-card>p{font-size:10px;color:var(--muted);line-height:1.7;margin-top:13px}.planner-form{background:white;border:1px solid #e2e3d8;padding:32px;border-radius:7px;align-self:start}fieldset{margin:0;border:0;padding:0;min-width:0}legend{padding:0;font-size:20px;letter-spacing:-.035em;margin-bottom:22px}label{display:block;font-size:11px;font-weight:500;margin:18px 0 7px}.planner-form label:first-of-type{margin-top:0}input,select{display:block;width:100%;border:1px solid #d8ddd2;background:#fcfcf9;color:var(--ink);border-radius:3px;padding:13px 11px;font-size:12px;min-height:47px;min-width:0}select{cursor:pointer;padding-right:28px}.optional{font-weight:400;color:#71786d;font-size:10px;margin-left:4px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-row label:first-of-type{margin-top:18px}.field-note{font-size:10px;color:var(--muted);line-height:1.6;margin-top:10px}#arrival-fields{border-top:1px solid var(--line);margin-top:22px}.form-submit{width:100%;margin-top:24px;justify-content:space-between}.preview-notice{font-size:10px;color:var(--muted);line-height:1.7;margin-top:15px}.preview-label{font-size:8px;letter-spacing:.1em;display:block;color:var(--orange);margin-bottom:3px}.faq-section{display:grid;grid-template-columns:1fr 1.5fr;gap:90px;border-top:1px solid var(--line);padding-top:72px;padding-bottom:95px}.faq-section .eyebrow{margin-bottom:20px}.faqs details{border-bottom:1px solid var(--line)}.faqs details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;list-style:none;font-size:13px;padding:20px 0;gap:20px}summary::-webkit-details-marker{display:none}summary>span{font-size:22px;line-height:1;color:var(--orange);font-weight:400;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>p{color:var(--muted);font-size:12px;line-height:1.8;padding:0 35px 21px 0}footer{background:var(--pale)}.footer-top{padding-top:45px;padding-bottom:42px;display:flex;justify-content:space-between;align-items:center;gap:35px}.footer-top .wordmark{font-size:37px}.footer-top p{font-size:11px;margin-top:10px;color:var(--muted)}.footer-links{display:flex;gap:25px;font-size:11px}.footer-location{display:flex;align-items:center;gap:10px;font-size:12px}.footer-location small{font-size:10px;color:var(--muted)}.footer-location .icon{color:var(--orange)}.footer-bottom{border-top:1px solid #ccd1c3;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:var(--muted);padding-top:18px;padding-bottom:21px}dialog{max-width:590px;width:calc(100% - 32px);max-height:calc(100vh - 48px);padding:40px;border:1px solid var(--line);border-radius:9px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#14251ed9;backdrop-filter:blur(4px)}dialog h2{font-size:47px;margin-top:13px}.dialog-close{position:absolute;right:16px;top:13px;border:0;background:none;color:var(--ink);font-size:28px;line-height:1;width:35px;height:35px}.dialog-description{font-size:12px;line-height:1.7;color:var(--muted);margin:20px 0}textarea{width:100%;background:white;border:1px solid var(--line);padding:14px;color:var(--ink);font-size:12px;line-height:1.7;border-radius:4px;resize:vertical}.dialog-actions{display:flex;gap:12px;margin-top:18px}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:var(--pale)}#copy-status{font-size:11px;min-height:20px;margin-top:10px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1500px){.hero{gap:95px;padding-top:34px;padding-bottom:74px}.hero-image{height:620px}}
@media(max-width:1100px){.section-wrap{width:calc(100% - 72px)}.nav-wrap{width:calc(100% - 72px)}.topline{padding-right:36px;padding-left:36px}.hero{gap:40px;min-height:620px}h1{font-size:66px}.hero-image{height:520px}.hero-actions{gap:17px;flex-wrap:wrap}.hero-actions .button{padding:16px 18px}.hero-description{font-size:14px}.image-note{left:-20px;width:235px;padding:20px}.image-note p{font-size:23px}.hello-stamp{width:90px;height:90px;right:-10px}.hero-price{margin-top:27px}nav{gap:21px;margin-right:0}.section-heading{gap:45px}.price-card{padding:28px 28px 0}.how-section{gap:60px}.arrival-inner{gap:65px}.arrival-copy h2{font-size:55px}.arrival-ticket{width:260px}.planner-section{gap:60px}.faq-section{gap:55px}.footer-links{flex-direction:column;gap:8px}}
@media(max-width:800px){.section-wrap{width:calc(100% - 40px)}.topline{padding:8px 20px}.topline>span:first-child{display:none}.topline>span:last-child{width:100%;justify-content:center;font-size:8px}.nav-wrap{width:calc(100% - 40px);height:76px;gap:16px}.wordmark{font-size:33px}.nav-cta{margin-left:auto}.button.small{padding:11px 13px;font-size:10px;gap:10px}.menu-toggle{display:flex;flex-direction:column;gap:5px;justify-content:center;align-items:center;width:35px;height:40px;border:0;background:none}.menu-toggle span{height:1px;background:var(--ink);width:20px}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:20px;border-bottom:1px solid var(--line);font-size:14px;margin:0;box-shadow:0 10px 20px #00000008}.site-header nav.open{display:flex;flex-direction:column;gap:20px}.hero{grid-template-columns:1fr;gap:40px;padding-top:26px;padding-bottom:35px}.hero-copy{max-width:520px}.hero .eyebrow{font-size:9px;margin-bottom:22px}h1{font-size:clamp(57px,10.5vw,77px);line-height:1.02}.hero-description{font-size:14px;max-width:410px;margin-top:22px}.hero-actions{margin-top:25px;gap:24px}.hero-price{margin-top:25px}.hero-visual{width:100%;max-width:590px;justify-self:center;padding-left:12px}.hero-image{height:540px;border-radius:85px 5px 5px 5px;object-position:center 61%}.hello-stamp{right:7px;top:20px}.image-note{left:0;bottom:66px;width:250px}.image-note p{font-size:25px}.promise-strip{justify-content:space-between;gap:10px;font-size:10px;padding:19px 0}.promise-strip span{gap:6px}.promise-strip .icon{width:12px;height:12px}.eyewear-section{padding:66px 0 60px}.section-heading{display:block;margin-bottom:28px}h2{font-size:48px}.section-heading>p{margin-top:23px;max-width:450px;font-size:13px}.price-grid{gap:15px}.price-card{padding:24px 23px 0}.price-sub{min-height:35px;font-size:10px}.price{font-size:57px}.check-list{font-size:11px}.how-section{gap:35px;grid-template-columns:1fr;padding:55px 0 60px}.how-heading h2{font-size:47px}.steps article{gap:25px;padding:19px 0}.steps article:first-child{padding-top:0}.steps h3{font-size:18px}.steps p{font-size:13px}.arrival-inner{gap:35px;padding-top:55px;padding-bottom:55px;grid-template-columns:.75fr 1.25fr}.arrival-graphic{padding:0 5px}.arrival-ticket{width:220px;padding:20px;border-radius:85px 85px 6px 6px}.airport-code{font-size:79px}.ticket-dash{margin-left:-20px;margin-right:-20px}.ticket-route{font-size:24px}.ticket-top{gap:15px;font-size:8px}.ticket-caption{font-size:7px;letter-spacing:.1em}.ticket-top .icon{width:22px;height:22px}.arrival-graphic-note{font-size:16px}.arrival-copy h2{font-size:47px}.arrival-prices{gap:23px}.arrival-prices strong{font-size:21px}.arrival-copy>p:not(.eyebrow):not(.arrival-scope){font-size:12px}.arrival-scope{font-size:9px}.planner-section{gap:35px;grid-template-columns:1fr;padding:65px 0}.planner-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.planner-intro>.eyebrow{grid-column:1 / -1}.planner-intro>p:not(.eyebrow){grid-column:1;align-self:start;margin-top:18px;font-size:12px}.estimate-card{grid-column:2;grid-row:2 / 4;margin:0;padding:0;border:0;align-self:center}.estimate-total strong{font-size:52px}.planner-form{padding:28px}.faq-section{grid-template-columns:1fr;gap:30px;padding:55px 0 65px}.faqs summary{font-size:13px}.footer-top{flex-wrap:wrap;padding:35px 0}.footer-top>div:first-child{flex:1}.footer-location{width:100%}.footer-links{font-size:11px}.footer-bottom{flex-direction:column;gap:5px;font-size:9px}html{scroll-padding-top:90px}}
@media(max-width:520px){.hero-image{height:465px}.hero-actions .button{font-size:11px;gap:15px}.text-link{font-size:10px;gap:10px}.hero-price small{font-size:9px}.promise-strip{flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:10px}.price-grid{grid-template-columns:1fr;gap:18px}.price-card{padding:25px 27px 0}.price-sub{min-height:0}.card-top{margin-bottom:20px}.price{font-size:60px}.check-list{font-size:12px;padding-top:18px;padding-bottom:19px}.card-button{padding:19px 0}.arrival-inner{grid-template-columns:1fr;gap:44px;padding:48px 0 53px}.arrival-graphic{display:none}.arrival-copy h2{font-size:55px}.arrival-copy>p:not(.eyebrow):not(.arrival-scope){font-size:13px;max-width:340px}.arrival-copy .eyebrow{margin-bottom:20px}.arrival-prices{gap:45px}.arrival-prices strong{font-size:25px}.arrival-scope{font-size:10px}.planner-intro{display:block}.planner-intro h2{font-size:50px}.planner-intro>p:not(.eyebrow){font-size:13px}.estimate-card{border-top:1px solid var(--line);padding-top:22px;margin-top:26px;max-width:none}.estimate-total strong{font-size:58px}.planner-form{padding:24px 20px}.field-row{grid-template-columns:1fr}.field-row>div:nth-child(2) label:first-of-type{margin-top:12px}.preview-notice{font-size:10px}.footer-links{gap:9px}.footer-top .wordmark{font-size:34px}.footer-top p{font-size:10px}dialog{padding:31px 22px}dialog h2{font-size:42px}.dialog-actions{flex-direction:column}.dialog-actions .button{width:100%}.image-note{width:230px;padding:18px 20px}.image-note p{font-size:23px}.hello-stamp{width:84px;height:84px}.hello-stamp strong{font-size:23px}.hello-stamp span{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Booking and personal support */
.payment-split{border-top:1px solid var(--line);padding-top:13px;margin-top:16px}.payment-split>div{display:flex;justify-content:space-between;gap:14px;font-size:11px;margin-top:8px}.payment-split>div:first-child{color:var(--orange)}.payment-split strong{font-weight:500;white-space:nowrap}.estimate-terms{display:inline-block;font-size:10px;border-bottom:1px solid var(--line);margin-top:15px;padding-bottom:2px}.booking-section{border-top:1px solid var(--line);padding-top:72px;padding-bottom:70px}.booking-section h2 em{color:var(--orange)}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:38px}.booking-process ol{list-style:none;padding:0;margin:0}.booking-process li{display:flex;gap:22px;margin-bottom:27px}.booking-process li>span{font-family:var(--serif);font-size:31px;color:var(--orange);line-height:1.1}.booking-process h3{font-size:17px;letter-spacing:-.02em;font-weight:500;margin:0 0 7px}.booking-process p{font-size:12px;line-height:1.8;color:var(--muted);max-width:350px}.booking-process>.button{margin-top:4px}.prepayment-card{padding:30px 32px;border-radius:7px;background:var(--pale);align-self:start}.prepayment-card h3{font-family:var(--serif);font-weight:400;font-size:37px;line-height:1.1;letter-spacing:-.035em;margin:17px 0 25px}.prepay-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #cbd2c2;padding:18px 0;gap:15px}.prepay-row strong{display:block;font-size:13px;font-weight:500}.prepay-row span{display:block;font-size:10px;color:var(--muted);margin-top:4px}.prepay-row>p{font-family:var(--serif);font-size:33px;line-height:1;white-space:nowrap}.prepay-row small{font-family:var(--sans);font-size:9px}.prepay-combined{font-size:11px;line-height:1.9;border-top:1px solid #cbd2c2;padding-top:15px;color:var(--muted)}.prepay-combined strong{font-weight:500;color:var(--ink)}.payment-availability{display:flex;gap:9px;margin-top:20px;background:#f8f7f099;padding:12px;border-radius:4px}.setup-dot{display:block;width:7px;height:7px;border-radius:50%;background:var(--orange);flex-shrink:0;margin-top:5px}.payment-availability p{font-size:10px;line-height:1.7;color:var(--muted)}.payment-availability strong{display:block;font-weight:500;color:var(--ink)}.cancellation-terms{border-top:1px solid var(--line);margin-top:30px}.cancellation-terms summary{font-size:12px}.cancellation-terms p{font-size:11px;max-width:850px;padding-bottom:12px}.footer-support{padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.support-launcher{position:fixed;right:26px;bottom:24px;z-index:25;display:flex;align-items:center;gap:10px;border:1px solid #ffffff6b;background:var(--ink);color:var(--paper);padding:16px 23px;border-radius:100px;box-shadow:0 6px 30px #14251e2b;font-size:13px;font-weight:500;cursor:pointer}.support-launcher:hover{background:#395346}.support-launcher .icon{width:20px;height:20px}.support-dialog{margin:auto 24px 24px auto;width:390px;max-width:calc(100% - 32px);padding:28px;max-height:calc(100dvh - 32px);border-radius:13px;overflow-y:auto}.support-dialog::backdrop{background:#14251e55;backdrop-filter:blur(2px)}.support-dialog .dialog-close{top:12px;right:10px;font-size:25px}.support-heading{display:flex;align-items:center;gap:12px;padding-right:10px}.support-emblem{font-family:var(--serif);font-size:24px;letter-spacing:-.06em;display:flex;align-items:center;justify-content:center;background:var(--pale);width:50px;height:50px;flex-shrink:0;border-radius:50%}.support-emblem>span{font-style:italic;color:var(--orange)}.support-heading .eyebrow{font-size:8px}.support-dialog h2{font-size:27px;letter-spacing:-.025em;margin:4px 0 0}.support-intro{font-size:12px;line-height:1.8;color:var(--muted);margin:20px 0}.chat-connection{display:flex;gap:9px;padding:14px;background:var(--pale);border-radius:5px}.chat-connection strong{font-size:12px;font-weight:500}.chat-connection p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:5px}.support-connect{width:100%;justify-content:space-between;margin-top:14px;min-height:46px;padding:13px 14px;font-size:12px}.button:disabled{cursor:not-allowed;opacity:.5}.support-topics{margin-top:22px}.support-topics>.eyebrow{font-size:8px;margin-bottom:8px}.support-topics details{border-bottom:1px solid var(--line)}.support-topics summary{font-size:11px;padding:14px 0}.support-topics summary>span{font-size:18px}.support-topics details>p{font-size:11px;padding-right:8px;padding-bottom:15px}.support-plan{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:17px 0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer;font-size:12px}.support-plan small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.support-privacy{border-top:1px solid var(--line);padding-top:12px;font-size:9px;line-height:1.7;color:var(--muted)}.chat-fallback{font-size:10px;border-bottom:1px solid var(--line)}.summary-next-step{margin-top:18px;padding:15px;background:var(--pale);border-radius:4px;font-size:11px}.summary-next-step strong{font-weight:500}.summary-next-step p{font-size:10px;color:var(--muted);margin:5px 0 9px}.summary-next-step .text-link{background:none;border:0;border-bottom:1px solid var(--line);padding:0 0 3px;color:var(--ink);cursor:pointer;font-size:10px}#chat-feedback:empty{display:none}
@media(min-width:1101px){nav{gap:23px;margin-right:0}}
@media(max-width:1100px) and (min-width:801px){nav{gap:12px;font-size:10px}.nav-wrap{gap:20px}}
@media(max-width:800px){.booking-layout{gap:35px}.booking-section{padding-top:55px;padding-bottom:55px}.prepayment-card{padding:25px}.prepayment-card h3{font-size:32px}.booking-process li{gap:15px}.booking-process p{font-size:12px}.booking-process h3{font-size:15px}.support-launcher{right:16px;bottom:16px;padding:13px 18px}.footer-bottom{padding-bottom:85px}}
@media(max-width:600px){.booking-layout{grid-template-columns:1fr;gap:30px;margin-top:28px}.booking-process li:last-child{margin-bottom:20px}.prepayment-card{padding:25px}.booking-process p{max-width:none}.support-dialog{margin:auto 12px 12px;max-width:calc(100% - 24px);width:auto;padding:24px 22px;max-height:calc(100dvh - 24px)}.support-dialog h2{font-size:27px}.support-launcher{font-size:12px}.support-heading{gap:10px}.support-emblem{width:45px;height:45px}}
/* USD service prices with reference CNY equivalents. */
.hero-price b,.price b,.arrival-prices b,.prepay-row b{font-weight:inherit}.hero-price strong .hero-usd-label{font-size:10px;font-weight:400;margin-left:3px}.price{font-size:58px;white-space:nowrap}.price>span{font-size:15px}.base-price{font-size:12px;color:var(--muted);margin-top:3px;margin-bottom:13px}.arrival-prices strong{font-size:25px;white-space:nowrap}.arrival-base{font-size:11px;color:#c4ceb7;display:block;margin-top:3px}.currency-note{display:flex;gap:20px;border:1px solid var(--line);border-radius:5px;padding:20px 24px;margin-bottom:40px;align-items:flex-start}.currency-mark{font-family:var(--serif);font-size:25px;white-space:nowrap;color:var(--orange)}.currency-note strong{font-size:12px;font-weight:500}.currency-note p{font-size:10px;line-height:1.85;color:var(--muted);margin-top:5px;max-width:890px}.currency-note a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.estimate-card>.estimate-base{font-size:12px;margin-top:2px;color:var(--ink)}.estimate-line-amount{text-align:right;white-space:nowrap}.estimate-line-amount small,.payment-split strong small{display:block;font-size:10px;font-weight:400;color:var(--muted);margin-top:2px}.payment-split strong{text-align:right}.estimate-total strong{font-size:56px}.prepay-row .prepay-base{display:block;text-align:right;font-size:10px;color:var(--muted);margin-top:7px}.prepay-row p>small:first-child{font-size:9px}.prepay-row p{font-size:32px}.prepay-combined strong{display:inline;font-weight:500}.prepay-combined [data-dual-cny]{font-size:inherit}
@media(max-width:1100px){.arrival-prices{gap:25px}.arrival-prices strong{font-size:23px}.price{font-size:53px}}
@media(max-width:800px){.price{font-size:49px}.price>span{font-size:13px}.arrival-prices{gap:20px}.arrival-prices strong{font-size:22px}.currency-note{gap:14px;padding:17px 20px;margin-bottom:20px}.estimate-total strong{font-size:49px}.hero-price small{font-size:9px}}
@media(max-width:520px){.price{font-size:58px}.price>span{font-size:14px}.currency-note{display:block;padding:17px 19px}.currency-mark{display:block;margin-bottom:7px;font-size:22px}.arrival-prices strong{font-size:25px}.arrival-prices{gap:30px}.estimate-total strong{font-size:55px}.payment-split>div{align-items:flex-start}.hero-price strong{font-size:12px}.hero-price strong .hero-usd-label{font-size:8px}.hero-price small{font-size:9px;max-width:270px}.prepay-row p{font-size:30px}}

/* Meet a City wordmark: shared city identity, Shenzhen launch. */
.wordmark .brand-chinese{display:inline-block;margin-left:11px;font-family:var(--sans);font-size:12px;font-weight:400;letter-spacing:.16em;vertical-align:middle;color:var(--muted)}
.footer-top>div:first-child{max-width:380px}
@media(max-width:520px){.wordmark .brand-chinese{font-size:10px;margin-left:9px}.footer-top>div:first-child{flex-basis:100%;max-width:none}}

/* Shenzhen hardware community visits. */
.hardware-section{padding-top:88px;padding-bottom:82px;border-bottom:1px solid var(--line)}
.hardware-section h2 em{color:var(--orange)}
.hardware-section .section-heading{margin-bottom:25px}
.hardware-scope{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.hardware-scope span{border:1px solid var(--line);border-radius:100px;padding:7px 13px;font-size:11px}
.hardware-caption{font-size:12px;color:var(--muted);margin-bottom:15px}
.hardware-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.hardware-card{min-height:230px;border:1px solid var(--line);border-radius:6px;padding:27px;background:#fcfbf6}
.hardware-number{display:block;color:var(--orange);font-size:9px;letter-spacing:.12em;margin-bottom:24px}
.hardware-card h3{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.05;letter-spacing:-.025em;max-width:270px}
.hardware-card p,.hardware-invitation>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.8;margin-top:15px}
.hardware-invitation{display:flex;flex-direction:column;align-items:flex-start;padding:27px;border-radius:6px;background:var(--ink);color:var(--paper)}
.hardware-invitation .eyebrow{font-size:8px;color:#d6dfc8}
.hardware-invitation h3{font-family:var(--serif);font-size:32px;font-weight:400;line-height:1.1;margin-top:17px}
.hardware-invitation>p:not(.eyebrow){color:#d6dfc8;margin-bottom:20px}
.hardware-invitation .button{font-size:11px;gap:14px;padding:13px 15px;margin-top:auto}
.hardware-details{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:30px}
.hardware-details h3{font-size:15px;letter-spacing:-.01em;margin-bottom:8px}
.hardware-details p{font-size:11px;line-height:1.85;color:var(--muted)}
.hardware-enquiry{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;border-top:1px solid var(--line);margin-top:42px;padding-top:42px}
.hardware-enquiry-intro h3{font-family:var(--serif);font-size:43px;line-height:1.05;font-weight:400;margin-top:18px}
.hardware-enquiry-intro>p:not(.eyebrow){font-size:12px;color:var(--muted);margin-top:20px;max-width:330px;line-height:1.8}
.hardware-enquiry-intro .text-link{border:0;border-bottom:1px solid var(--line);padding:0;background:none;color:var(--ink);margin-top:17px;white-space:normal;text-align:left}
.hardware-form{background:var(--pale);border-radius:6px;padding:28px;min-width:0}
.hardware-form fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}
.hardware-form legend{font-size:13px;font-weight:500;margin-bottom:12px}
.hardware-form .optional{font-size:10px;font-weight:400;color:var(--muted)}
.hardware-role-options{display:grid;gap:9px}
.hardware-role-options label{display:flex;gap:10px;align-items:center;font-size:12px;cursor:pointer;margin:0;min-height:32px}
.hardware-role-options input{width:17px;height:17px;min-height:17px;flex-shrink:0;margin:0;accent-color:var(--ink)}
.hardware-form>label,.hardware-form .field-row label{display:block;font-size:12px;margin:15px 0 6px}
.hardware-form .field-row label{margin-top:0}
.hardware-form select,.hardware-form input[type="date"]{display:block;width:100%;min-width:0;max-width:100%;min-height:44px;border:1px solid #c3ccbc;border-radius:4px;background:var(--paper);color:var(--ink);padding:10px 12px;font-size:12px}
.hardware-form textarea{background:var(--paper);border-color:#c3ccbc;display:block}
.hardware-form .form-submit{width:100%;margin-top:22px;justify-content:space-between}
.hardware-form .preview-notice{font-size:10px;line-height:1.7;margin-top:12px;color:var(--muted)}
@media(max-width:1000px){.hardware-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hardware-enquiry{gap:35px;grid-template-columns:.8fr 1.2fr}.hardware-invitation{min-height:230px}}
@media(max-width:800px){.hardware-section{padding:60px 0}.hardware-details{gap:28px}.hardware-enquiry{grid-template-columns:1fr;gap:26px}.hardware-enquiry-intro>p:not(.eyebrow){max-width:540px}.hardware-enquiry-intro h3{font-size:40px}.hardware-card{min-height:215px}}
@media(max-width:520px){.hardware-grid,.hardware-details{grid-template-columns:1fr}.hardware-grid{gap:14px}.hardware-card{min-height:0;padding:24px}.hardware-number{margin-bottom:17px}.hardware-card h3{max-width:none;font-size:31px}.hardware-card p{margin-top:12px}.hardware-scope{gap:8px;margin-bottom:24px}.hardware-scope span{font-size:10px}.hardware-caption{font-size:11px}.hardware-details{gap:22px}.hardware-enquiry{margin-top:30px;padding-top:30px}.hardware-form{padding:24px 18px}.hardware-form legend .optional{display:block;margin-top:4px}.hardware-form .field-row>div+div label{margin-top:15px}.hardware-form .form-submit{padding:15px 12px;gap:12px;font-size:11px}.hardware-enquiry-intro h3{font-size:38px}}

.hardware-prepay-note{font-size:11px;line-height:1.8;color:var(--muted);padding:15px 0;border-top:1px solid #cbd2c2}

.nav-cta{white-space:nowrap}.support-hardware-link,.support-custom-link,.support-requests-link{display:block;font-size:12px;text-decoration:underline;text-underline-offset:3px;padding-bottom:17px}
@media(max-width:520px){.nav-cta{display:none}}

/* Project requests are reviewed before a quote or payment link is issued. */
.hero-reassurance{font-size:11px;color:var(--muted);margin-top:15px;max-width:380px}
.how-heading .host-intro{font-size:13px;color:var(--muted);line-height:1.8;margin-top:25px;max-width:360px}
.how-heading>.button{margin-top:23px}
.planner-chat{border:0;background:none;color:var(--ink);padding:0;margin-top:20px;white-space:normal}
#hardware-estimate-prepay{border-top:1px solid var(--line);padding-top:10px;margin-top:10px;font-size:11px}
.custom-section{padding-top:82px;padding-bottom:80px;border-bottom:1px solid var(--line)}
.custom-section h2 em{color:var(--orange)}
.custom-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:65px}
.custom-intro{font-family:var(--serif);font-size:34px;line-height:1.1;letter-spacing:-.025em;margin-bottom:25px}
.custom-process ol{list-style:none;padding:0;margin:0 0 24px}
.custom-process li{border-top:1px solid var(--line);padding:18px 0}
.custom-process strong{font-weight:500;font-size:14px}
.custom-process li p{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.8;max-width:380px}
.custom-process .field-note{font-size:11px;line-height:1.8;color:var(--muted);max-width:410px}
.request-history-link{margin-top:18px;text-decoration:underline;text-underline-offset:4px;white-space:normal}
.hardware-form input[type="text"]{width:100%;min-width:0;min-height:44px;border:1px solid #c3ccbc;border-radius:4px;background:var(--paper);color:var(--ink);padding:10px 12px;font-size:12px}
.hardware-form>label:first-child{margin-top:0}
#custom-form .field-row{margin-top:17px}
.request-result{margin-top:18px;padding:15px;background:var(--paper);border:1px solid #b9c8af;border-radius:4px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}
.request-error{border-color:var(--orange)}
.request-result-link{display:inline-block;margin-top:10px;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.custom-section{padding:60px 0}.custom-layout{grid-template-columns:1fr;gap:30px}.custom-process li p,.custom-process .field-note{max-width:none}.custom-intro{font-size:31px}}
.hardware-rate{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;padding:27px 30px;border-radius:6px;background:var(--cream);margin-bottom:28px}
.hardware-rate-amount{font-family:var(--serif);font-size:24px;line-height:1.2;margin:10px 0}
.hardware-rate-amount b{font-size:60px;font-weight:400;letter-spacing:-.04em}
.hardware-rate-amount span{font-family:var(--sans);font-size:13px}
.hardware-rate p:not(.hardware-rate-amount):not(.eyebrow){font-size:12px;line-height:1.8}
.hardware-rate strong{font-size:16px;font-weight:500;display:block;margin-bottom:10px}
.hardware-rate .field-note{color:var(--muted);margin-top:12px}
.hardware-estimate{border-top:1px solid #c3ccbc;border-bottom:1px solid #c3ccbc;padding:17px 0;margin:20px 0}
.hardware-estimate>span{font-size:11px;color:var(--muted)}
.hardware-estimate strong{display:block;font-family:var(--serif);font-size:31px;font-weight:400;line-height:1.2;margin:6px 0 10px}
.hardware-estimate p{font-size:11px;line-height:1.8;color:var(--muted)}
@media(max-width:600px){.hardware-rate{grid-template-columns:1fr;gap:22px;padding:24px}.hardware-rate>div+div{border-top:1px solid #d5cca6;padding-top:20px}}

/* Email entry points stay unavailable until the mailbox has been verified. */
[data-email-contact][hidden]{display:none!important}
.email-contact{font-size:12px;line-height:1.7}
.email-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.contact-address{display:block;overflow-wrap:anywhere;user-select:text;font-size:12px;margin-top:9px}
.contact-copy{border:0;background:none;padding:8px 0;color:var(--ink);font-size:11px;text-align:left;text-decoration:underline;text-underline-offset:3px}
.email-contact .email-note,.email-contact .email-status{font-size:11px;line-height:1.7;color:var(--muted);margin-top:8px}
.email-status:empty{display:none}
.support-email,.summary-email{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}
.support-email>strong{font-size:13px;font-weight:500}
.support-email .email-actions{margin-top:13px}
.email-actions .button{padding:12px 16px;gap:14px}
.footer-email{margin-top:18px}
.footer-email>a{display:inline-flex;align-items:center;gap:12px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.footer-email .contact-copy{padding-top:3px}
.footer-email .contact-address{margin-top:5px}
@media(max-width:480px){.summary-email .email-actions{align-items:stretch;flex-direction:column;gap:4px}.summary-email .email-actions .button{width:100%}.email-contact .contact-copy{min-height:40px}}
