/* Shared public presentation; approved listing content and booking behavior stay intact. */
:root{--sakan-green:#173d32;--sakan-line:#dce4da;--sakan-gold:#b48a45}
*{box-sizing:border-box}
html{scroll-padding-top:110px}
body{overflow-wrap:break-word}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--sakan-gold);outline-offset:4px}
.site-header{gap:20px}
.site-header nav{min-width:0}
.site-header nav a{min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
.catalog-main{max-width:1160px;padding-top:32px}
.catalog-main h1{color:var(--sakan-green);max-width:24ch}
.catalog-main a{color:var(--sakan-green)}
.breadcrumbs{line-height:1.6;color:#657267;font-size:.85rem}
.catalog-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;align-items:start}
.catalog-card{min-width:0;padding:26px;border-color:var(--sakan-line);border-radius:16px;box-shadow:0 5px 22px #173d3205}
.catalog-grid>.catalog-card{margin:0}
.catalog-card h2{color:var(--sakan-green);line-height:1.3}
.catalog-photos{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.catalog-rate{color:var(--sakan-green);font-variant-numeric:tabular-nums}
.catalog-main form{width:100%;max-width:700px;min-width:0}
.catalog-main label{color:#365344;font-size:.95rem}
.catalog-main input,.catalog-main textarea,.catalog-main select{min-width:0;max-width:100%;font-size:16px;min-height:48px;border-color:#b9c8bb;border-radius:10px;line-height:1.5}
.catalog-main input[type=checkbox],.catalog-main input[type=radio]{width:20px;min-height:20px;accent-color:var(--sakan-green)}
.catalog-main fieldset{min-width:0;border-color:var(--sakan-line);padding:20px;border-radius:12px}
.catalog-main legend{padding:0 8px;color:var(--sakan-green);font-weight:650}
.catalog-main button,.catalog-main .enquiry-next-action{background:var(--sakan-green);border-color:var(--sakan-green);color:#fff;min-height:48px;max-width:100%;font-weight:650;border-radius:10px;line-height:1.5}
.catalog-main button:hover:enabled{background:#245746}
.catalog-main [role=status]{line-height:1.65;overflow-wrap:anywhere}
.catalog-main [role=alert]{padding:14px;border:1px solid #e0b7af;background:#fff6f3;border-radius:10px;color:#8d342d}
.area-icon{background:#edf3e9;color:var(--sakan-green)}
.area-features .area-category,.area-eyebrow{color:#496447}
.area-features li{padding:18px;background:#f4f7ef;border-radius:14px}
.enquiry-next-step{background:#eef4e9;border-color:#cad8c1}
.legal-page{background:#f5f6f0;color:#263b30}
.legal-page header{background:var(--sakan-green);padding:16px max(24px,calc((100vw - 900px)/2));display:flex;align-items:center;gap:12px}
.legal-page header a{display:inline-flex;align-items:center;gap:12px;min-height:44px;letter-spacing:0}
.legal-page header img{width:42px;height:42px;border-radius:50%}
.legal-page main{background:#fff;border-color:var(--sakan-line);border-radius:16px;box-shadow:0 5px 24px #173d3205}
.legal-page h1,.legal-page h2{color:var(--sakan-green)}
@media(max-width:760px){
 .site-header{flex-wrap:wrap;gap:8px;padding:12px 18px}
 .site-header nav{display:flex!important;flex-wrap:nowrap;justify-content:flex-start;width:100%;overflow-x:auto;gap:20px;padding:2px 0 5px;scrollbar-width:thin}
 .site-header nav a{display:inline-flex!important;font-size:.85rem;flex-shrink:0}
 .catalog-main{padding:26px 18px 56px}
 .catalog-main h1{margin-top:24px;font-size:clamp(1.85rem,8vw,2.75rem)}
 .catalog-card{padding:20px}
 .catalog-main fieldset{padding:14px}
 .catalog-main button{width:100%}
 .area-features{gap:12px}
 .area-features li{padding:14px}
 .legal-page main{margin:16px 12px;padding:24px 20px;border-radius:14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
