:root{color-scheme:light;--bg: #f4efe4;--paper: #fff9ef;--paper-strong: #fffdf7;--ink: #23302a;--muted: #756f67;--line: #e1d4c0;--green: #2d6b4e;--green-deep: #173c2f;--blue: #3f7182;--clay: #a85b3f;--yellow: #e8bd68;--wine: #a74763;--moss-soft: #e8efe3;--rose-soft: #f6e8e1;--shadow: 0 18px 46px rgba(57, 44, 30, .14)}
*{box-sizing:border-box}
[hidden]{display:none!important}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
html{font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;background:var(--bg);color:var(--ink)}
[id]{scroll-margin-top:96px}
body{margin:0;min-width:320px}
img{display:block;max-width:100%}
a{color:inherit}
.site-shell{min-height:100vh;background:linear-gradient(180deg,#fff9ef 0%,var(--bg) 42%,#eef3ea 100%)}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem clamp(1rem,4vw,3rem);border-bottom:1px solid rgba(175,148,114,.32);background:#fff9efeb;backdrop-filter:blur(14px)}
.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;white-space:nowrap}
.brand-logo{width:min(196px,42vw);height:auto}
.brand-mark{color:var(--green);font-size:.8rem;font-weight:800}
.brand-name{font-size:1.05rem;font-weight:800}
.site-nav{display:flex;gap:.4rem;align-items:center;white-space:nowrap}
.site-nav a{border-radius:999px;padding:.55rem .8rem;color:var(--muted);font-size:.9rem;font-weight:700;text-decoration:none}
.site-nav a[href="/owner/"]{color:#4f745f}
.site-nav a:hover,.site-nav a:focus-visible{background:var(--rose-soft);color:var(--green-deep)}
.site-nav a[href="/owner/"]:hover,.site-nav a[href="/owner/"]:focus-visible{background:var(--rose-soft);color:var(--green-deep)}
.container{width:min(1120px,calc(100% - 2rem));margin:0 auto}
.button-row{display:flex;flex-wrap:wrap;gap:.75rem}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid transparent;border-radius:8px;padding:.75rem 1rem;font-weight:800;line-height:1.2;text-decoration:none;transition:background .14s ease,border-color .14s ease,transform .14s ease,box-shadow .14s ease}
.button:hover,.button:focus-visible{transform:translateY(-1px)}
.button.primary{background:var(--green);color:#fff;box-shadow:0 10px 24px #16462f38}
.button.secondary{border-color:#d8c2a8;background:var(--paper-strong);color:var(--green-deep)}
.home-hero{position:relative;display:grid;min-height:min(620px,78vh);align-items:end;overflow:hidden;background:#d5c28f}
.home-hero img{position:absolute;inset:0;width:100%;height:100%;filter:brightness(1.16) saturate(1.08) contrast(.95) sepia(.06);object-fit:cover;object-position:center 48%;transform:scale(1.01)}
.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#17251d94,#17251d2e 55%,#fae8ba14),linear-gradient(90deg,#1c2b2080,#57412a29 48%,#fae8ba1f)}
.home-hero-content{position:relative;z-index:1;width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:4.5rem 0 3.5rem;color:#fff;text-shadow:0 2px 18px rgba(14,28,20,.38)}
.home-hero-content h1{margin:0;font-size:clamp(2rem,3.5vw,2.9rem);line-height:1.08}
.home-hero-content p:not(.eyebrow){max-width:620px;margin:1rem 0 1.4rem;font-size:1.05rem;font-weight:700;line-height:1.9}
.home-hero .button.primary{border-color:#efe1cb;background:#fffdf7;color:var(--green-deep);box-shadow:0 16px 34px #0e1c1452;text-shadow:none}
.home-hero .button.primary:hover,.home-hero .button.primary:focus-visible{background:#fff7e8;box-shadow:0 18px 38px #0e1c145c}
.info-band{border-bottom:1px solid var(--line);background:#fffdf7f5}
.info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.info-grid a,.two-column-actions a,.contact-action{display:grid;gap:.3rem;min-height:116px;align-content:center;border-left:1px solid var(--line);padding:1rem 1.2rem;text-decoration:none}
.info-grid a:last-child{border-right:1px solid var(--line)}
.info-grid a:hover,.info-grid a:focus-visible,.two-column-actions a:hover,.two-column-actions a:focus-visible,.contact-action:hover,.contact-action:focus-visible{background:#fff3e4}
.info-grid span,.two-column-actions span,.contact-action span{color:var(--muted);font-size:.82rem;font-weight:800}
.info-grid strong,.two-column-actions strong,.contact-action strong{color:var(--green-deep);font-size:1.08rem}
.section-band{padding:3rem 0}
.muted-band{background:#e9efe5}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}
.section-heading.standalone{display:block;grid-column:1 / -1;margin-bottom:0}
.section-heading h2{margin:0;color:var(--green-deep);font-size:2rem;line-height:1.2}
.section-heading a{color:var(--green);font-weight:900;text-decoration:none}
.split-section{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:2rem;align-items:start}
.section-lead p,.split-section p{color:#44504b;line-height:1.9}
.guide-entrance{padding:1.6rem 0;border-block:1px solid rgba(175,148,114,.22);background:#fff9efb8}
.guide-entrance-grid{display:flex;align-items:center;justify-content:space-between;gap:1.2rem}
.guide-explain-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:1rem;align-items:stretch}
.guide-entrance h2,.guide-explain h2{margin:0;color:var(--green-deep);font-size:2rem;line-height:1.25}
.guide-entrance h2{max-width:680px;color:var(--green-deep);font-size:clamp(1.18rem,2.4vw,1.55rem);line-height:1.45}
.guide-entrance p{max-width:620px;margin:.45rem 0 0;font-size:.95rem}
.guide-entrance .button{flex:0 0 auto}
.guide-entrance p,.guide-explain p,.tour-note{color:#44504b;line-height:1.9}
.guide-note,.guide-scope-card,.guide-mini-card{border:1px solid var(--line);border-radius:8px;background:var(--paper-strong)}
.guide-note{display:grid;align-content:center;gap:.75rem;border-color:#a7476347;padding:1.2rem;background:#fffaf0;box-shadow:var(--shadow)}
.guide-note strong{color:var(--green-deep);font-size:1.25rem;line-height:1.45}
.guide-note p{margin:0}
.guide-mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.guide-mini-card{display:flex;gap:.9rem;align-items:center;padding:1rem}
.guide-avatar{display:grid;flex:0 0 auto;place-items:center;width:58px;height:58px;border-radius:999px;background:var(--wine);color:#fff;font-weight:900}
.guide-mini-card h3,.guide-mini-card p,.guide-scope-card h3,.guide-scope-card p{margin:0}
.guide-mini-card h3,.guide-scope-card h3{color:var(--green-deep)}
.guide-mini-card p{color:var(--muted);font-size:.9rem;line-height:1.65}
.guide-explain-grid .section-heading{grid-column:1 / -1}
.guide-explain-grid .guide-mini-list{grid-column:1 / -1;margin-top:0}
.guide-scope-card{min-height:168px;padding:1rem;background:#fffaf0}
.tour-note{margin:0 auto 1rem;font-size:.94rem}
.eligibility-note{border:1px solid rgba(167,71,99,.22);border-radius:8px;padding:.7rem .8rem;background:#fffaf0;color:#654431;font-size:.8rem;line-height:1.7}
.page-title .eligibility-note{max-width:760px;margin:1rem 0 0}
.visit-flow .tour-note{margin-top:-.2rem;margin-bottom:.9rem;color:#8a4a36;font-size:.86rem;line-height:1.75}
.button.disabled{cursor:default;border-color:#d6d4ca;background:#e5e1d6;color:#6e6b62}
.property-hero{position:relative;min-height:min(600px,72vh);display:grid;align-items:end;overflow:hidden;background:#1a3027}
.property-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;transform:scale(1.04);transform-origin:center bottom}
.property-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#15231c8f,#15231c29 42%,#15231c00 76%),linear-gradient(90deg,#15231c9e,#5a3a2b47 38%,#15231c0a 74%)}
.hero-content{position:relative;z-index:1;width:min(880px,calc(100% - 2rem));margin:0 auto;padding:5rem 0 3.5rem;color:#fffdf8;text-shadow:0 2px 18px rgba(0,0,0,.46)}
.eyebrow{margin:0 0 .75rem;color:var(--yellow);font-size:.9rem;font-weight:800}
.hero-content h1{max-width:760px;margin:0;font-size:3.2rem;line-height:1.14}
.hero-content h1 span{display:block}
.hero-info{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;margin:.75rem 0 0}
.status-chip{display:inline-flex;align-items:center;min-height:34px;border-radius:8px;padding:.38rem .75rem;background:#fff7e9;color:var(--green-deep);font-size:.88rem;font-weight:900;text-shadow:none}
.hero-meta{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.25rem 0 0}
.hero-updated{color:#fffdf8d1;font-size:.88rem;font-weight:700}
.badge{display:inline-flex;align-items:center;min-height:32px;border-radius:999px;padding:.35rem .7rem;background:#fff7e92e;color:#fffdf8;font-size:.88rem;font-weight:800}
.badge.solid{background:var(--green);color:#fff}
.chip-row{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.chip{display:inline-flex;align-items:center;min-height:28px;border:1px solid var(--line);border-radius:999px;padding:.25rem .62rem;background:#f6f0e5;color:var(--green-deep);font-size:.78rem;font-weight:900}
.chip.strong{border-color:var(--green);background:var(--green);color:#fff}
.main-grid{width:min(880px,calc(100% - 2rem));padding:1.6rem 0 4rem}
.content-stack{display:grid;gap:1rem}
.section{padding:1.4rem;border:1px solid var(--line);border-radius:8px;background:var(--paper);box-shadow:0 8px 24px #392c1e0f}
.section h2{margin:0 0 1rem;color:var(--green-deep);font-size:1.2rem;line-height:1.35}
.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.summary-item{min-height:92px;border-left:4px solid var(--wine);padding:.85rem .95rem;background:#fff3e4}
.summary-label{margin:0 0 .35rem;color:var(--muted);font-size:.78rem;font-weight:800}
.summary-value{margin:0;font-size:1.35rem;font-weight:900;line-height:1.25}
.definition-list{display:grid;grid-template-columns:160px minmax(0,1fr);border-top:1px solid var(--line)}
.definition-list dt,.definition-list dd{margin:0;border-bottom:1px solid var(--line);padding:.82rem 0}
.definition-list dt{color:var(--muted);font-size:.86rem;font-weight:800}
.definition-list dd{color:var(--ink);font-weight:700}
.utility-note{margin:.9rem 0 0;border-left:3px solid var(--gold);padding:.75rem 0 .75rem .95rem;color:#6a5548;font-size:.86rem;font-weight:700;line-height:1.75}
.note-list{display:grid;gap:.65rem;margin:0;padding-left:1.1rem;color:#343a37;line-height:1.75}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.gallery figure,.floorplan figure{margin:0}
.media-button{display:block;width:100%;border:0;border-radius:8px;padding:0;background:transparent;cursor:zoom-in;overflow:hidden}
.media-button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.gallery img{width:100%;aspect-ratio:4 / 3;object-fit:cover;background:#e5e1d7;transition:transform .16s ease}
.media-button:hover img,.media-button:focus-visible img{transform:scale(1.025)}
.gallery figcaption,.floorplan figcaption{padding-top:.45rem;color:var(--muted);font-size:.82rem;font-weight:700}
.floorplan img{width:100%;border:1px solid var(--line);border-radius:8px;background:#fffdf7}
.floorplan .media-button{width:min(520px,100%)}
.side-panel{border:1px solid var(--line);border-radius:8px;background:var(--paper-strong);box-shadow:var(--shadow)}
.side-panel-inner{padding:1.2rem}
.side-panel h2{margin:0 0 .8rem;color:var(--green-deep);font-size:1rem}
.status-banner{display:grid;gap:.5rem;border-left:5px solid var(--clay);padding:.95rem 1rem;background:#f8e8df}
.status-banner strong{color:#7b3e1b}
.status-banner p{margin:0;color:#5d5149;font-size:.9rem;line-height:1.6}
.media-dialog{width:min(1100px,calc(100vw - 2rem));max-width:none;border:0;padding:0;background:transparent}
.media-dialog::backdrop{background:#0a0e0cc7}
.media-dialog-inner{position:relative;display:grid;gap:.7rem;border-radius:8px;padding:1rem;background:#111b16;color:#fffdf8}
.media-dialog img{width:100%;max-height:82vh;object-fit:contain;background:#0c120f}
.media-dialog-caption{margin:0;color:#fffdf8d1;font-size:.9rem;font-weight:700}
.media-dialog-close{position:absolute;top:.65rem;right:.65rem;display:inline-grid;place-items:center;width:36px;height:36px;border:0;border-radius:999px;background:#fff7e9f0;color:var(--green-deep);cursor:pointer;font-size:1.25rem;font-weight:900;line-height:1}
.property-list{display:grid;gap:1rem;padding:2rem 0 4rem}
.property-list.compact{padding:0}
.property-card{display:grid;grid-template-columns:260px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper-strong);text-decoration:none;box-shadow:0 12px 30px #392c1e14;transition:border-color .14s ease,box-shadow .14s ease,transform .14s ease}
.property-card:hover,.property-card:focus-visible{border-color:#a747635c;box-shadow:var(--shadow);transform:translateY(-2px)}
.property-card img{width:100%;height:100%;min-height:220px;object-fit:cover}
.property-card-body{display:grid;align-content:center;gap:.75rem;padding:1.25rem}
.property-card h2{margin:0;font-size:1.22rem;line-height:1.35}
.property-card p{margin:0;color:var(--muted);font-weight:700}
.mini-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.2rem 0 0}
.mini-specs div{border-top:1px solid var(--line);padding-top:.5rem}
.mini-specs dt,.mini-specs dd{margin:0}
.mini-specs dt{color:var(--muted);font-size:.72rem;font-weight:800}
.mini-specs dd{color:var(--ink);font-size:.88rem;font-weight:900}
.page-title{padding:3rem 0 1rem}
.page-title h1{margin:0;color:var(--green-deep);font-size:2.2rem;line-height:1.2}
.lead{max-width:760px;margin:1rem 0 0;color:#44504b;font-size:1.02rem;font-weight:700;line-height:1.9}
.owner-page-note{max-width:760px;margin:1rem 0 0;border-left:3px solid var(--gold);padding:.8rem 0 .8rem 1rem;color:#8a4a36;font-size:.9rem;font-weight:800;line-height:1.8}
.filter-panel{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:1rem;border:1px solid var(--line);border-radius:8px;padding:1rem;background:#fffaf0}
.filter-panel.stacked{grid-template-columns:1fr;align-self:start;position:sticky;top:86px}
.filter-panel h2{margin:0 0 .7rem;color:var(--green-deep);font-size:.95rem}
.filter-status{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.8rem 0 0;color:var(--muted);font-size:.9rem;font-weight:800}
.filter-status button{min-height:36px;border:1px solid var(--line);border-radius:8px;padding:.45rem .7rem;background:var(--paper-strong);color:var(--green-deep);cursor:pointer;font-weight:800}
.filter-options{display:flex;flex-wrap:wrap;gap:.5rem}
.filter-options.vertical{display:grid;gap:.45rem}
.filter-options label{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;border:1px solid var(--line);border-radius:999px;padding:.35rem .7rem;background:#fffdf7;color:#34413c;font-size:.88rem;font-weight:800}
.filter-options input{width:16px;height:16px;accent-color:var(--green)}
.search-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;align-items:start;padding-bottom:4rem}
.search-results{padding:0}
.empty-state{margin-top:1rem;border:1px solid var(--line);border-radius:8px;padding:1rem;background:#fffaf0;color:var(--muted);font-weight:800}
.two-column-actions,.contact-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper-strong);box-shadow:0 10px 28px #392c1e14}
.contact-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-form-guide{display:grid;gap:1rem;max-width:760px;border:1px solid var(--line);border-radius:8px;padding:clamp(1.2rem,4vw,2rem);background:var(--paper-strong);box-shadow:0 10px 28px #392c1e14}
.contact-form-guide h2{margin:0 0 .6rem;color:var(--green-deep);font-size:clamp(1.4rem,3vw,1.9rem)}
.contact-form-guide p{margin:0;color:#45514c;line-height:1.8}
.contact-form-guide .button{justify-self:start}
.contact-form-note{padding-top:.25rem;font-size:.92rem}
.contact-form-note a{color:var(--green-deep);font-weight:900;text-underline-offset:.2em}
.two-column-actions a,.contact-action{border-left:0;border-right:1px solid var(--line)}
.two-column-actions a:last-child,.contact-action:last-child{border-right:0}
.flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.flow-note{grid-column:1 / -1;margin:-.2rem 0 .35rem;border:1px solid rgba(167,71,99,.2);border-radius:8px;padding:1rem 1.1rem;background:#fffaf0;color:#4d5854;line-height:1.85}
.flow-note.timeline-note{color:#8a4a36;font-size:.86rem;line-height:1.75}
.flow-group-heading{grid-column:1 / -1;margin:.5rem 0 -.25rem;border-left:3px solid var(--clay);padding-left:.75rem;color:#8a4a36;font-size:1.08rem;line-height:1.45}
.flow-item{min-height:180px;border:1px solid var(--line);border-radius:8px;padding:1rem;background:var(--paper-strong);box-shadow:0 8px 22px #392c1e0f}
.contact-action strong,.info-grid strong,.two-column-actions strong{line-height:1.35}
.flow-item span{color:var(--wine);font-size:.86rem;font-weight:900}
.flow-item h3{margin:.45rem 0 .5rem;color:var(--green-deep);font-size:1.05rem}
.flow-item p{margin:0;color:#4d5854;line-height:1.75}
.flow-item .flow-item-note{margin-top:.75rem;color:#8a4a36;font-size:.86rem;line-height:1.65}
.flow-more-link{grid-column:1 / -1;margin:.15rem 0 0}
.flow-more-link a{color:var(--green);font-size:.95rem;font-weight:900;text-decoration:none}
.flow-more-link a:hover,.flow-more-link a:focus-visible{text-decoration:underline;text-underline-offset:.2em}
.flow-cta{grid-column:1 / -1;display:flex;justify-content:center;margin-top:.75rem}
.faq-list{display:grid;gap:1.8rem;padding-bottom:3rem}
.faq-group{display:grid;gap:.65rem}
.faq-group h2{margin:0 0 .15rem;color:var(--clay);font-size:clamp(1.05rem,2vw,1.25rem);font-weight:900}
.faq-list details{border:1px solid var(--line);border-radius:8px;background:var(--paper-strong);box-shadow:0 8px 22px #392c1e0f}
.faq-list summary{cursor:pointer;padding:1rem 1.1rem;color:var(--green-deep);font-weight:900}
.faq-list p{margin:0;padding:0 1.1rem 1rem;color:#45514c;line-height:1.8}
.article-list{display:grid;gap:1rem;padding:1.5rem 0 4rem}
.article-list.compact{padding:0}
.article-card{display:grid;grid-template-columns:220px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--paper-strong);text-decoration:none;box-shadow:0 12px 30px #392c1e14}
.article-card img{width:100%;height:100%;min-height:180px;object-fit:cover}
.article-card-body{display:grid;gap:.75rem;align-content:center;padding:1.2rem}
.article-card h2{margin:0;color:var(--green-deep);font-size:1.12rem;line-height:1.45}
.article-card p{margin:0;color:#4f5a56;line-height:1.7}
.article-hero{position:relative;display:grid;min-height:430px;align-items:end;overflow:hidden;background:#1b3128}
.article-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.article-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#17271fc7,#4530271a)}
.article-hero-content{position:relative;z-index:1;width:min(880px,calc(100% - 2rem));margin:0 auto;padding:3rem 0;color:#fff}
.article-hero-content h1{max-width:820px;margin:1rem 0 .5rem;font-size:clamp(2rem,5vw,3.4rem);line-height:1.2}
.article-hero-content p{margin:0;color:#ffffffd6;font-weight:800}
.article-body{max-width:820px;padding:2rem 0 4rem;line-height:1.9}
.article-body h2,.article-body h3{margin:2rem 0 .75rem;color:var(--green-deep);line-height:1.35}
.article-body p{color:#343e3a}
.article-body .article-lead{color:#24372f;font-size:1.08rem;line-height:1.9}
.article-body ul{margin:.75rem 0 1.2rem;padding-left:1.25rem;color:#343e3a}
.article-body li{margin:.35rem 0}
.article-body .article-note{margin:1.5rem 0;border:1px solid rgba(167,71,99,.2);border-radius:8px;padding:1rem 1.1rem;background:#fffaf0;color:#4d5854}
.article-body .article-note strong{display:block;margin-bottom:.35rem;color:#8a4a36}
.article-body .article-note p{margin:0}
.article-body img{height:auto;border-radius:8px;margin:1.2rem 0}
.article-body a{color:var(--blue);font-weight:800}
.instagram-section{background:var(--paper-strong)}
.instagram-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.instagram-heading .eyebrow{margin:0}
.instagram-account{color:var(--green);font-size:.9rem;font-weight:900;text-decoration:none}
.instagram-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}
.instagram-card{display:grid;place-items:center;overflow:hidden;aspect-ratio:1;border:1px solid var(--line);border-radius:8px;background:var(--moss-soft);color:var(--green-deep);font-size:.86rem;font-weight:900;text-decoration:none}
.instagram-card img{width:100%;height:100%;object-fit:cover;transition:transform .16s ease}
.instagram-card:hover img,.instagram-card:focus-visible img{transform:scale(1.035)}
.site-footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:1.5rem clamp(1rem,4vw,3rem);color:var(--muted);background:#efe9dd;font-size:.85rem}
.footer-credit{display:grid;gap:.12rem;font-size:.72rem;line-height:1.35}
.footer-credit p{margin:0}
.site-footer a{color:var(--green);font-weight:800;text-decoration:none}
.social-link{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:999px;background:#fffaf0}
.social-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
@media(max-width:900px){.hero-content h1{font-size:2.6rem}
.summary-grid,.gallery,.info-grid,.flow-grid,.guide-entrance-grid,.guide-explain-grid,.guide-mini-list,.split-section,.search-layout,.filter-panel,.contact-actions,.instagram-grid{grid-template-columns:1fr}
.instagram-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.info-grid a,.info-grid a:last-child{min-height:92px;border-right:0;border-left:0;border-bottom:1px solid var(--line);padding:1rem}
.info-grid a:last-child{border-bottom:0}
.filter-panel.stacked{position:static}
.two-column-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){[id]{scroll-margin-top:148px}
.site-header{align-items:flex-start;flex-direction:column}
.site-nav{width:100%;flex-wrap:wrap;gap:.25rem;overflow-x:visible;white-space:normal}
.site-nav a{padding:.45rem .55rem;font-size:.84rem}
.brand-logo{width:min(180px,58vw)}
.property-hero{min-height:520px}
.property-hero img{transform:scale(1.16);transform-origin:center bottom}
.hero-content h1{font-size:2rem}
.hero-content{padding-bottom:2.2rem}
.summary-grid,.gallery,.property-card,.article-card,.two-column-actions,.mini-specs{grid-template-columns:1fr}
.home-hero{min-height:560px}
.guide-entrance-grid{align-items:flex-start;flex-direction:column}
.home-hero-content{padding-bottom:2.4rem}
.home-hero-content h1{font-size:clamp(1.9rem,8vw,2.25rem)}
.definition-list{grid-template-columns:1fr}
.definition-list dt{border-bottom:0;padding-bottom:.2rem}
.definition-list dd{padding-top:0}
.property-card img,.article-card img{min-height:210px}
.section-heading{align-items:start;flex-direction:column}
.instagram-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.instagram-heading,.filter-status{align-items:flex-start;flex-direction:column}
}
