@charset "UTF-8";
:root{--paper:#faf8f2;--ink:#263f37;--muted:#627169;--gold:#b28a46;--line:#deded2;--cream:#eee9dc;--serif:Georgia,"Noto Serif TC","PMingLiU",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.9 "Microsoft JhengHei",system-ui,sans-serif}.sage{--paper:#f5f7f1;--cream:#e8eee3}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #9d7130;outline-offset:4px}.wrap{width:min(1240px,90%);margin:auto}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:15px}.skip:focus{top:8px}header{position:sticky;top:0;z-index:20;background:#faf8f2f5;border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}.nav{display:flex;align-items:center;gap:35px;justify-content:space-between;min-height:95px}.brand{display:flex;align-items:center;gap:13px;line-height:1.5;font-weight:700;font-size:22px;white-space:nowrap}.brand b{color:var(--gold);font-weight:400}.brand small{font-size:9px;display:block;letter-spacing:2px;font-weight:500}.monogram{border:1px solid var(--gold);height:46px;width:46px;display:grid;place-items:center;color:var(--gold);font-family:var(--serif);font-size:25px}.nav nav{display:flex;gap:24px;font-size:14px}.nav-contact{border-bottom:1px solid var(--gold);padding-bottom:5px;font-size:14px;white-space:nowrap}.hero{padding:62px 0 38px;background:radial-gradient(ellipse at 80% 30%,#e9ddc7,transparent 60%)}.hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2.5px;color:#806739;font-weight:700;line-height:1.7;margin-bottom:20px}h1,h2,h3{font-family:var(--serif);font-weight:500}h1{font-size:clamp(35px,4.4vw,64px);line-height:1.4;letter-spacing:1px;margin:20px 0 25px}h2{font-size:clamp(29px,3vw,42px);line-height:1.5;margin:10px 0 28px}h3{font-size:24px;line-height:1.55;margin:15px 0}.lead{color:var(--muted);font-size:18px;max-width:650px}.hero figure{margin:0}.hero img{display:block;width:100%;height:550px;object-fit:cover;border-radius:180px 6px 6px 6px}.hero figcaption{text-align:right;font-size:11px;color:var(--muted);margin-top:10px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin:27px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 25px;border:1px solid transparent;cursor:pointer;line-height:1.6;font-weight:600}.gold{background:var(--ink);color:#fff}.gold:hover{background:#3b5647}.light{border-color:#b4b9aa}.hero-note{font-size:11px;color:var(--muted);letter-spacing:1px;margin-top:36px}section.wrap,section>.wrap{padding-top:80px;padding-bottom:80px}.hero>.wrap{padding-top:0;padding-bottom:0}.cards{display:grid;gap:22px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.card{padding:34px;background:#fffefa;border:1px solid var(--line);transition:transform .2s,box-shadow .2s}.card p{color:var(--muted)}a.card:hover,a.city-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px #263f3710;text-decoration:none}.featured{background:var(--ink);color:white;border-color:var(--ink)}.featured p{color:#d6e1d9}.featured .more{color:#e8cca1}.number{color:#907343;font-size:12px;letter-spacing:1px}.more{color:#87672f;font-size:14px;display:block;margin-top:30px}.section-title{margin-bottom:35px}.band{background:var(--cream)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.split p:first-child{margin-top:0}.text-link{border-bottom:1px solid var(--gold);padding-bottom:5px;font-weight:600;display:inline-block}.trust-strip{display:flex;justify-content:space-between;gap:20px;padding:27px 0;border-bottom:1px solid var(--line);font-size:13px}.trust-strip span:before{content:'✧';color:var(--gold);margin-right:10px}.fine,.small{color:var(--muted);font-size:13px}.fine{margin-top:25px}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;padding:0;margin-top:40px}.steps b{font:36px var(--serif);color:var(--gold)}.steps li{border-top:1px solid #b8b7a5;padding-top:23px}.steps p{font-size:14px;color:var(--muted)}.inset{border:1px solid var(--line);padding:50px!important;margin-bottom:70px}.faq{max-width:940px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-size:18px}.faq details p{color:var(--muted)}.contact{background:var(--ink);color:white}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.contact .eyebrow{color:#dac095}.contact .phone{font:32px var(--serif)}.contact .gold{background:#dbc49c;color:#233c33}.contact small{color:#c3d0c8}.contact small a{text-decoration:underline}.contact form{padding:30px;background:#ffffff0b;border:1px solid #ffffff30}.contact form h3{margin-top:0}.contact .small{color:#c5d2ca}.contact label{display:grid;gap:5px;font-size:13px;margin:14px 0}.contact input,.contact textarea,.contact select{width:100%;min-width:0;background:#faf8f2;color:#263f37;border:1px solid #d0d5c6;border-radius:0;padding:10px 12px}.contact textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.text-button{border:0;background:transparent;color:inherit;cursor:pointer;text-decoration:underline}footer.wrap{display:flex;justify-content:space-between;gap:40px;padding-top:42px;padding-bottom:40px;font-size:13px}footer small{color:var(--muted)}footer nav{display:grid;align-content:start;gap:9px;white-space:nowrap}.mobile-contact{display:none}.page-intro{padding-bottom:45px!important}.city-card{border:1px solid var(--line);background:#fffefa;padding:25px;transition:.2s}.city-card h3{display:inline;margin-right:15px}.city-card span{font-size:12px;color:var(--muted)}.city-card p{font-size:14px;color:var(--muted)}.city-card b{font-size:13px;font-weight:500;color:#87672f}.search{display:grid;gap:8px;max-width:600px;margin-top:30px}.search input{width:100%;padding:15px;border:1px solid #a6b0a2;background:#fff}.chips{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.chips a{border:1px solid var(--line);padding:7px 16px;background:white;font-size:14px}.districts article{display:grid;grid-template-columns:180px 1fr;gap:35px;padding:28px 0;border-bottom:1px solid var(--line);scroll-margin-top:105px}.districts article p{margin-top:0;color:var(--muted)}.districts .actions{font-size:13px;margin:15px 0}.districts .actions a{text-decoration:underline;text-underline-offset:5px}.checklist{padding-left:22px}.checklist li{padding:10px 0;border-bottom:1px solid var(--line)}@media(min-width:1400px){.hero img{height:610px}}@media(max-width:1050px){.nav{gap:15px}.nav nav{gap:14px}.brand{font-size:18px}.nav-contact{display:none}.hero-grid{gap:30px}.hero img{height:470px}.split,.contact-grid{gap:40px}.card{padding:25px}.trust-strip{flex-wrap:wrap;justify-content:center}.steps{gap:20px}}@media(max-width:760px){.nav{display:block;padding-top:15px;padding-bottom:13px}.brand{font-size:20px}.monogram{width:38px;height:38px}.brand small{font-size:8px}.nav nav{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px}.hero{padding-top:28px}.hero-grid{grid-template-columns:1fr;gap:25px}.hero img{height:auto;aspect-ratio:1.35;max-height:430px;border-top-left-radius:100px}h1{font-size:40px}.hero-note{margin-top:20px}.three,.two,.split,.contact-grid{grid-template-columns:1fr}.cards{gap:16px}.split,.contact-grid{gap:24px}section.wrap,section>.wrap{padding-top:52px;padding-bottom:52px}.trust-strip{font-size:11px;gap:10px 20px}.steps{grid-template-columns:1fr 1fr}.inset{padding:28px!important;margin-bottom:35px}.contact form{padding:22px}.form-row{grid-template-columns:1fr;gap:0}.districts article{grid-template-columns:1fr;gap:0}.districts h3{margin-top:2px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:25;background:#fff;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{padding:12px;text-align:center;color:#263f37}.mobile-contact a:last-child{background:#263f37;color:white}footer.wrap{display:block;padding-bottom:100px}footer nav{margin-top:20px;display:flex;flex-wrap:wrap;gap:20px}.lead{font-size:16px}h2{font-size:30px}.page-intro h1{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
