:root{--bg: #faf9f6;--ink: #2d2d2d;--muted: #8a8a85;--sage: #d8e5de;--sage-deep: #9dbcac;--line: #e6e3dc;--white: #ffffff;--serif: "Cormorant Garamond", Georgia, serif;--sans: "Inter", -apple-system, sans-serif;--ease: cubic-bezier(.25, .6, .3, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);font-weight:300;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit}.container{max-width:1240px;margin:0 auto;padding:0 32px}h1,h2,h3,.serif{font-family:var(--serif);font-weight:500;line-height:1.15}.display{text-transform:uppercase;letter-spacing:.18em}.eyebrow{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}.header{position:sticky;top:0;z-index:50;background:#faf9f6eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:76px}.logo{font-family:var(--serif);font-size:21px;letter-spacing:.22em;text-transform:uppercase}.logo span{color:var(--sage-deep)}.nav{display:flex;gap:36px;align-items:center}.nav a{font-size:13px;letter-spacing:.08em;position:relative;padding:4px 0;transition:color .4s var(--ease)}.nav a:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}.nav a:hover:after,.nav a.active:after{transform:scaleX(1);transform-origin:left}.btn{display:inline-block;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:13px 34px;font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background .5s var(--ease),color .5s var(--ease),border-color .5s var(--ease)}.btn:hover,.btn.solid{background:var(--ink);color:var(--bg)}.btn.solid:hover{background:#4a4a46;border-color:#4a4a46}.btn.sage{background:var(--sage);border-color:var(--sage);color:var(--ink)}.btn.sage:hover{background:var(--sage-deep);border-color:var(--sage-deep);color:var(--white)}.btn.sm{padding:9px 20px;font-size:11px}.btn:disabled{opacity:.45;cursor:default}.hero{position:relative;height:86vh;min-height:560px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--white)}.hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;animation:heroIn 2.4s var(--ease) both}@keyframes heroIn{0%{transform:scale(1.06);opacity:.6}to{transform:scale(1);opacity:1}}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#14181c47,#14181c73)}.hero-content{position:relative;z-index:2;padding:0 24px}.hero-content .eyebrow{color:#ffffffd9}.hero-content h1{font-size:clamp(44px,7vw,92px);margin:18px 0 22px}.hero-content p{max-width:560px;margin:0 auto 36px;font-size:15px;color:#ffffffe6}.hero .btn{border-color:#fffc;color:var(--white)}.hero .btn:hover{background:var(--white);color:var(--ink)}.section{padding:96px 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:48px}.section-head h2{font-size:clamp(30px,4vw,46px)}.link-more{font-size:12px;letter-spacing:.2em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:3px;transition:opacity .4s var(--ease)}.link-more:hover{opacity:.55}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.visible{opacity:1;transform:none}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px}.card{background:var(--white);border:1px solid var(--line);transition:box-shadow .6s var(--ease),transform .6s var(--ease)}.card:hover{box-shadow:0 24px 48px -24px #2d2d2d2e;transform:translateY(-4px)}.card-img{position:relative;overflow:hidden;aspect-ratio:4 / 3;background:var(--sage)}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}.card:hover .card-img img{transform:scale(1.04)}.card-tag{position:absolute;top:16px;left:16px;background:#faf9f6eb;padding:6px 14px;font-size:10px;letter-spacing:.24em;text-transform:uppercase}.fav-btn{position:absolute;top:12px;right:12px;width:38px;height:38px;border-radius:50%;border:none;background:#faf9f6eb;cursor:pointer;font-size:16px;color:var(--ink);transition:background .4s var(--ease),color .4s var(--ease)}.fav-btn:hover{background:var(--white)}.fav-btn.on{color:#b4574e}.card-body{padding:24px 26px 28px}.card-body h3{font-size:23px;margin-bottom:6px}.card-meta{font-size:13px;color:var(--muted);margin-bottom:14px}.card-price{font-size:17px;font-weight:500;letter-spacing:.02em}.mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.mosaic-item{position:relative;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;color:var(--white)}.mosaic-item.wide{grid-column:span 2}.mosaic-item img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform 1.6s var(--ease)}.mosaic-item:hover img{transform:scale(1.04)}.mosaic-item:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 40%,#14181ca6)}.mosaic-label{position:relative;z-index:2;padding:28px}.mosaic-label .eyebrow{color:#ffffffbf}.mosaic-label h3{font-size:26px;margin-top:8px}.sage-band{background:var(--sage)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}.stats h3{font-size:48px}.stats p{font-size:13px;color:#5d6f66;letter-spacing:.06em}.filters{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:44px;align-items:flex-end}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.field select,.field input,.field textarea{font-family:var(--sans);font-size:14px;font-weight:300;padding:11px 14px;border:1px solid var(--line);background:var(--white);color:var(--ink);outline:none;min-width:150px;transition:border-color .4s var(--ease)}.field select:focus,.field input:focus,.field textarea:focus{border-color:var(--sage-deep)}.listing-hero{position:relative;height:62vh;min-height:420px;overflow:hidden}.listing-hero img{width:100%;height:100%;object-fit:cover}.listing-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:64px}.spec-list{display:grid;grid-template-columns:1fr 1fr;gap:18px 32px;margin:32px 0}.spec-list div{border-bottom:1px solid var(--line);padding-bottom:12px}.spec-list dt{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.spec-list dd{font-size:17px;margin-top:4px}.side-card{background:var(--white);border:1px solid var(--line);padding:36px;position:sticky;top:108px}.side-card .price{font-family:var(--serif);font-size:36px;margin-bottom:20px}.tour-frame{width:100%;aspect-ratio:16 / 9;border:none;margin-top:24px}.auth-wrap{max-width:460px;margin:80px auto;background:var(--white);border:1px solid var(--line);padding:52px}.auth-wrap h1{font-size:34px;margin-bottom:28px}.form{display:flex;flex-direction:column;gap:18px}.form .field input,.form .field select,.form .field textarea{min-width:0;width:100%}.error{background:#f7e8e6;color:#8c4740;padding:12px 16px;font-size:13px}.notice{background:var(--sage);padding:12px 16px;font-size:13px}.role-pills{display:flex;gap:10px}.role-pill{flex:1;border:1px solid var(--line);background:var(--white);padding:12px 8px;font-size:12px;cursor:pointer;text-align:center;transition:background .4s var(--ease),border-color .4s var(--ease)}.role-pill.on{background:var(--sage);border-color:var(--sage-deep)}.account{display:grid;grid-template-columns:240px 1fr;gap:56px;align-items:start}.account-nav{display:flex;flex-direction:column;gap:4px;position:sticky;top:108px}.account-nav button{text-align:left;background:none;border:none;padding:12px 16px;font-size:14px;cursor:pointer;border-left:2px solid transparent;transition:border-color .4s var(--ease),background .4s var(--ease)}.account-nav button.on{border-left-color:var(--ink);background:var(--white)}.panel{background:var(--white);border:1px solid var(--line);padding:40px}.panel+.panel{margin-top:28px}.panel h2{font-size:28px;margin-bottom:24px}.row-list{display:flex;flex-direction:column}.row-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.row-item:last-child{border-bottom:none}.badge{font-size:10px;letter-spacing:.18em;text-transform:uppercase;padding:5px 12px;background:var(--sage)}.badge.draft{background:#eee9dd}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1 / -1}.footer{border-top:1px solid var(--line);padding:64px 0 48px;margin-top:40px}.footer-grid{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}.footer small{display:block;margin-top:28px;color:var(--muted);font-size:12px;max-width:640px;line-height:1.7}.footer .links{display:flex;flex-direction:column;gap:10px;font-size:13px}.footer .links a:hover{opacity:.6}@media (max-width: 900px){.nav{display:none}.mosaic{grid-template-columns:1fr}.mosaic-item.wide{grid-column:span 1}.listing-grid,.account{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.account-nav{position:static;flex-direction:row;overflow-x:auto}}
