*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#1E1A17;background:#FAF6F0;line-height:1.6;font-size:17px}a{color:#7E4230}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #14203D;outline-offset:2px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;color:#14203D;line-height:1.2;margin:0 0 .5em}h1{font-size:clamp(2.1rem,5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.5vw,2.3rem)}h3{font-size:1.25rem}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:99}
/* switcher */
.switcher{background:#14203D;color:#EDE6DA;font-size:.9rem}.switcher .wrap{display:flex;gap:18px;flex-wrap:wrap;align-items:center;padding-top:8px;padding-bottom:8px}.switcher a{color:#EDE6DA;text-decoration:none}.switcher a:hover{text-decoration:underline}.switcher .here{font-weight:700;border-bottom:2px solid #A85C42}
/* header */
header.site{position:sticky;top:0;background:rgba(250,246,240,.97);border-bottom:1px solid #E3D9C8;z-index:40}.head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px}.logo img{height:56px;width:auto;display:block}.logo-tag{font-size:.8rem;color:#5A5148;margin:0}.nav{display:flex;gap:16px;flex-wrap:wrap}#menu-btn{display:none}.nav a{color:#14203D;text-decoration:none;font-weight:600}.nav a:hover{text-decoration:underline}.btn{display:inline-block;background:#7E4230;color:#fff!important;text-decoration:none;padding:11px 20px;border-radius:6px;font-weight:700;border:0;cursor:pointer;font-size:1rem}.btn:hover{background:#5F3022}.btn.ghost{background:transparent;color:#14203D!important;border:2px solid #14203D}.btn.navy{background:#14203D}.btn.small{padding:8px 14px;font-size:.9rem}
.hero{padding:56px 0 40px;background:linear-gradient(180deg,#F1E9DD, #FAF6F0)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#7E4230;font-weight:800;font-size:.85rem}.lead{font-size:1.2rem;color:#3D352E}.hero-panel{border:1px solid #E3D9C8;border-radius:12px;overflow:hidden;background:#fff}.hero-panel img{width:100%;height:280px;object-fit:cover;display:block}.hero-panel p{padding:14px 18px;margin:0;font-size:.95rem}.pillrow{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.pill{border:1px solid #C9BCA6;background:#fff;padding:6px 12px;border-radius:999px;font-size:.9rem}
section{padding:52px 0}section.alt{background:#F1E9DD}section.navy{background:#14203D;color:#EDE6DA}section.navy h2,section.navy h3{color:#fff}section.navy p{color:#EDE6DA}.note{font-size:.92rem;color:#5A5148}.honest{background:#fff;border-left:4px solid #A85C42;padding:14px 18px;margin:20px 0}
.steps,.grids{display:grid;gap:20px}.steps{grid-template-columns:repeat(3,1fr)}.grids.cols3{grid-template-columns:repeat(3,1fr)}.grids.cols4{grid-template-columns:repeat(4,1fr)}.grids.cols2{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid #E3D9C8;border-radius:12px;padding:22px}.card h3{margin-top:0}.card a{font-weight:700}.num{font-family:Georgia,serif;font-size:2rem;color:#A85C42;line-height:1}
.cat-card{background:#fff;border:1px solid #E3D9C8;border-radius:12px;padding:20px;display:block;text-decoration:none;color:#1E1A17}.cat-card:hover{border-color:#A85C42}.cat-card strong{font-family:Georgia,serif;font-size:1.15rem;color:#14203D}.cat-card .count{color:#7E4230;font-weight:700}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.filters button{border:2px solid #C9BCA6;background:#fff;padding:8px 16px;border-radius:999px;cursor:pointer;font-size:.95rem}.filters button[aria-pressed="true"]{background:#14203D;color:#fff;border-color:#14203D}.filters label{font-weight:600}.filters select{padding:9px 12px;border:2px solid #C9BCA6;border-radius:8px;background:#fff;font-size:.95rem}
.item-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.item{background:#fff;border:1px solid #E3D9C8;border-radius:12px;overflow:hidden;display:flex;flex-direction:column}.item .visual{height:170px;background:#EDE6DA url(../img/pattern-terracotta.jpg) center/cover;display:flex;align-items:flex-end;padding:12px}.item .visual span{background:rgba(250,246,240,.95);padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:700;color:#14203D}.item .body{padding:18px;flex:1;display:flex;flex-direction:column}.item h3{font-size:1.15rem}.item .code{color:#7E4230;font-weight:700;font-size:.9rem}.item .meta{font-size:.92rem;color:#5A5148}.item .actions{margin-top:auto;padding-top:14px;display:flex;gap:10px;flex-wrap:wrap}.item .actions button{cursor:pointer}
.space-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.space-card{background:#fff;border:1px solid #E3D9C8;border-radius:12px;padding:18px;text-align:left;cursor:pointer}.space-card:hover,.space-card.active{border-color:#A85C42;box-shadow:0 2px 0 #A85C42}.space-card strong{display:block;font-family:Georgia,serif;color:#14203D;font-size:1.1rem}.space-detail{background:#fff;border:1px solid #E3D9C8;border-radius:12px;padding:24px;margin-top:20px}.toggle{display:flex;gap:8px;margin:12px 0}.toggle button{padding:9px 18px;border:2px solid #14203D;background:#fff;cursor:pointer;border-radius:8px;font-weight:700}.toggle button[aria-pressed="true"]{background:#14203D;color:#fff}
form .field{margin-bottom:16px}label{display:block;font-weight:700;margin-bottom:6px}input,select,textarea{width:100%;padding:11px 12px;border:2px solid #C9BCA6;border-radius:8px;background:#fff;font:inherit}textarea{min-height:110px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.alert{padding:16px 18px;border-radius:8px;margin:16px 0}.alert.ok{background:#E6F0E6;border:1px solid #3A7A3A}.alert.err{background:#FBE9E4;border:1px solid #7E4230}.builder-list{list-style:none;padding:0}.builder-list li{border-bottom:1px solid #E3D9C8;padding:12px 0;display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.builder-list button{cursor:pointer}
dialog{border:0;border-radius:14px;padding:0;max-width:720px;width:calc(100% - 32px);color:#1E1A17}dialog::backdrop{background:rgba(20,32,61,.6)}.dlg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:24px 24px 0}.dlg-body{padding:0 24px 24px}.dlg-body .opt{margin:14px 0}.dlg-body .opt label{display:inline-block;margin:4px 8px 4px 0;font-weight:500}.dlg-body .opt input{width:auto}.qty{display:flex;gap:8px;align-items:center}.qty button{width:38px;height:38px;font-size:1.2rem;cursor:pointer}.close-x{background:#fff;border:2px solid #14203D;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:1.2rem}
footer{background:#14203D;color:#EDE6DA;padding:44px 0 90px}footer a{color:#fff}footer h3{color:#fff}.foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}.foot-grid img{height:52px;width:auto}
.sticky-cta{display:none}
details{border:1px solid #E3D9C8;background:#fff;border-radius:10px;padding:16px 20px;margin:12px 0}summary{font-weight:800;color:#14203D;cursor:pointer;font-size:1.05rem}
@media(max-width:900px){.hero-grid,.steps,.grids.cols3,.grids.cols4,.item-grid{grid-template-columns:1fr 1fr}.space-grid{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr}.nav{display:none}.nav.open{display:flex;flex-direction:column;position:absolute;top:70px;left:0;right:0;background:#FAF6F0;padding:16px 20px;border-bottom:1px solid #E3D9C8}.head{padding:10px 20px;position:relative}#menu-btn{display:inline-block!important}}
@media(max-width:600px){body{font-size:16px}.hero-grid,.steps,.grids.cols3,.grids.cols4,.grids.cols2,.item-grid,.space-grid,.form-grid{grid-template-columns:1fr}section{padding:36px 0}.hero{padding:36px 0 24px}.sticky-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;background:#14203D;padding:10px 12px;gap:10px}.sticky-cta a{flex:1;text-align:center;padding:12px 8px;border-radius:8px;font-weight:800;text-decoration:none}.sticky-cta .call{background:#fff;color:#14203D}.sticky-cta .inq{background:#A85C42;color:#fff}footer{padding-bottom:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
