
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.55 system-ui,sans-serif;color:#172431;background:#f5f6f1}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{line-height:1.03;letter-spacing:-.04em}h1{font-size:clamp(2.7rem,6.5vw,6rem)}h2{font-size:clamp(1.25rem,2.6vw,2rem)}a{color:inherit}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4382d7;outline-offset:4px}button,select{font:inherit}button,summary{cursor:pointer}[hidden]{display:none!important}.demo-note{display:flex;justify-content:space-between;gap:12px;padding:10px clamp(16px,4vw,42px);font:700 .72rem/1.3 ui-monospace,Consolas,monospace;letter-spacing:.06em;background:#111d29;color:#fff}.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px clamp(16px,5vw,60px);border-bottom:1px solid #8390a35b}.bar a,.bar span{font-size:.83rem}.kicker{font:750 .73rem/1.4 ui-monospace,Consolas,monospace;letter-spacing:.12em}.lede{margin-top:10px}.back{white-space:nowrap}
.menu{background:#fff6e8;color:#281812}.menu .shell{display:grid;grid-template-columns:minmax(228px,.67fr) 1.33fr;min-height:calc(100vh - 36px)}.menu-rail{background:#352019;color:#fff0d4;padding:38px clamp(22px,5vw,58px);display:grid;align-content:start;gap:15px}.mark{display:grid;place-items:center;border:1px solid #f5bb74;width:38px;height:38px;border-radius:50%;font:700 .8rem Georgia}.menu-rail h1,.menu-board h2{font-family:Georgia,serif;font-weight:400}.menu-rail .kicker,.menu-rail .small{color:#f3bd79}.menu-rail nav{display:grid;gap:6px;margin:8px 0 17px}.menu-rail nav a{border-bottom:1px solid #77584b;padding:5px 0;text-decoration:none}.menu-board{padding:37px clamp(22px,5vw,65px)}.menu-board h2{font-size:clamp(2.5rem,5vw,4rem);margin-top:7px}.menu-board section{margin-top:23px}.menu-board h3{font:700 1.22rem Georgia,serif;border-bottom:1px solid #a58569;padding-bottom:6px}.menu-board dl div{display:flex;justify-content:space-between;gap:15px;padding:6px 0;border-bottom:1px dotted #cbb29b}.menu-board dd{white-space:nowrap;font-weight:700}
.shop{background:#f7f2e8;color:#332d23}.catalogue{max-width:1160px;margin:auto;padding:35px clamp(16px,5vw,48px) 50px}.catalogue-top{display:flex;justify-content:space-between;align-items:end;gap:18px}.catalogue h1{font:400 clamp(2.8rem,6vw,5rem)/.98 Georgia,serif;letter-spacing:-.06em}.catalogue-top p{max-width:26ch}.filters{display:flex;gap:8px;margin:24px 0 15px}.filters button{border:1px solid #aa8f78;padding:5px 12px;border-radius:30px;background:transparent;color:inherit}.filters button[aria-pressed=true]{background:#332d23;color:white}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.product-grid article h2{font:700 1.1rem Georgia,serif;margin-top:9px}.product-grid p{font-size:.87rem}.object{aspect-ratio:1.22;display:grid;place-items:center;overflow:hidden}.object i{display:block;width:58%;height:37%;background:#a65237;box-shadow:10px 16px 20px #37241342;border-radius:16% 16% 48% 48%}.clay{background:#e4baa0}.clay i{border-top:12px solid #d38e6c}.linen{background:#d4b48e}.linen i{background:repeating-linear-gradient(90deg,#f5dbc5 0 9px,#d59c70 9px 12px);border-radius:3px;transform:rotate(-17deg);height:45%}.vase{background:#b5bcac}.vase i{height:66%;width:38%;border-radius:40% 40% 26% 26%;background:#566751;border-top:12px solid #889885}
.works{background:#eae9df;color:#22271f}.work-grid{display:grid;grid-template-columns:.8fr 1fr 1fr;grid-template-rows:auto auto;gap:15px;max-width:1160px;margin:auto;padding:32px clamp(16px,4vw,44px) 42px}.work-intro{grid-row:span 2;padding-top:16px}.work-intro h1{font-weight:950;text-transform:uppercase;margin:12px 0 20px}.work-intro p:not(.kicker){max-width:24ch}.lead-work{grid-column:span 2}.work-grid article h2{font-size:1.08rem;margin-top:8px}.work-grid article p{font-size:.82rem}.building{height:120px;background:linear-gradient(160deg,#6b7962,#a0a48c);display:flex;align-items:end;justify-content:center;overflow:hidden;padding:0 9%}.lead-work .building{height:205px}.building i{width:31%;height:70%;background:repeating-linear-gradient(90deg,#273830 0 12px,#43584a 12px 16px);border:5px solid #bec1ac;transform:skewY(-10deg)}.building i:nth-child(2){height:90%;transform:skewY(8deg);background:repeating-linear-gradient(90deg,#6c7867 0 15px,#8f9b86 15px 18px)}.building i:nth-child(3){height:56%}.building.arch{background:#beb3a4}.arch i{border-radius:70px 70px 0 0}.building.tower{background:#9caeb1}.tower i:nth-child(2){height:98%;transform:none}
.clinic{background:#e8f5f2;color:#103e36}.cross{color:#007663;font-weight:950;font-size:1.2rem}.clinic-main{max-width:1050px;margin:auto;padding:34px clamp(16px,4vw,44px) 48px;display:grid;grid-template-columns:1.45fr .75fr;gap:22px}.clinic-intro{grid-column:1/-1;text-align:center;margin-bottom:10px}.clinic-intro h1{font-size:clamp(2.3rem,5.1vw,4.8rem);margin:9px 0}.care-grid{display:grid;gap:10px}.care-grid details,.hours{background:white;border-radius:14px;border:1px solid #9dc7bc;padding:15px}.care-grid summary{font-weight:800}.care-grid summary span{color:#106653;margin-right:5px}.care-grid details p{margin-top:5px}.care-grid a{font-weight:750}.hours{align-self:start}.hours h2{margin-bottom:10px}.hours p{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #d4e6e1;padding:7px 0;font-size:.86rem}
.property{background:#eef3e9;color:#26382b}.property-main{max-width:1200px;margin:auto;padding:26px clamp(16px,4vw,45px) 45px}.search-strip{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:19px}.search-strip h1{font-size:clamp(2.6rem,5vw,4.4rem);margin-top:4px}.search-strip label{display:grid;font-size:.83rem;gap:4px}.search-strip select{padding:6px;border:1px solid #678574;background:white;border-radius:5px;color:#203527}.map-results{display:grid;grid-template-columns:1.45fr 1fr;gap:15px}.map{min-height:320px;position:relative;overflow:hidden;background:repeating-linear-gradient(28deg,transparent 0 53px,#f7f6ea 54px 64px,transparent 65px 106px),repeating-linear-gradient(116deg,#acc3a7 0 60px,#d7dec0 60px 114px);border:1px solid #a1ae91;border-radius:10px}.map-name{position:absolute;top:13px;left:13px;background:#f8f5e8;padding:6px 9px;font:700 .73rem Consolas,monospace}.map i{position:absolute;top:-24%;left:49%;width:24%;height:150%;border-left:18px solid #83b4bc;border-radius:50%;transform:rotate(23deg)}.map b{position:absolute;z-index:1;width:36px;height:36px;display:grid;place-items:center;background:#274b3c;color:#fff;border:3px solid white;border-radius:50%;top:40%;left:26%}.map b:nth-of-type(2){left:56%;top:25%}.map b:nth-of-type(3){left:72%;top:69%}.map-results section{display:grid;align-content:start;gap:9px}.map-results article{display:flex;gap:13px;align-items:center;padding:15px;background:#fff;border:1px solid #cbd9c5;border-radius:8px}.map-results article span{font:700 .8rem Consolas,monospace;color:#315b45}.map-results article h2{font-size:1.17rem}.map-results article p{font-size:.84rem}
.training{background:#f4edf9;color:#302548}.agenda-main{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px;max-width:1110px;margin:auto;padding:36px clamp(16px,5vw,55px) 50px}.date-block{background:#d9c6ed;padding:24px;border:2px solid #302548;box-shadow:8px 8px #a782c0}.date-number{font-weight:950;line-height:.88;font-size:clamp(5rem,13vw,10rem);letter-spacing:-.11em;color:#59377b;margin:13px 0}.date-block h1{font-size:clamp(2.2rem,4vw,3.9rem);margin-bottom:9px}.agenda{padding:11px 0}.agenda details{border-bottom:1px solid #957aa8;padding:15px 0}.agenda summary{font-size:1.02rem}.agenda time{margin-right:12px;font:800 .85rem Consolas,monospace}.agenda details p{margin:8px 0 0 20px;color:#503d60}
.cargo{background:#071e2d;color:#e5f9ff}.cargo-main{max-width:1170px;margin:auto;padding:32px clamp(16px,4vw,45px) 46px}.cargo-head{border-bottom:1px solid #396176;padding-bottom:23px}.cargo-head h1{font-size:clamp(3rem,7vw,6rem);margin:7px 0}.cargo .kicker{color:#83d8ea}.ops-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:12px;margin-top:15px}.ops-grid section{padding:20px;border:1px solid #416679;background:#102e40}.ops-grid h2{margin:8px 0}.ops-grid p:not(.kicker){color:#c3dfec}.route ol{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(3,1fr);font-size:.8rem}.route li span{display:block;width:11px;height:11px;border:3px solid #80d5e6;border-radius:50%;margin-bottom:6px;position:relative}.route li:not(:last-child) span:after{content:"";position:absolute;top:2px;left:8px;width:40px;height:1px;background:#80d5e6}
.event{background:#fff1dc;color:#31170d}.event-main{max-width:1070px;margin:auto;padding:20px clamp(16px,4vw,44px) 38px}.poster{position:relative;isolation:isolate;overflow:hidden;min-height:320px;background:#ec793d;padding:24px 30px;display:grid;grid-template-columns:1fr auto;align-content:space-between}.poster h1{grid-column:1;font-size:clamp(4.5rem,12vw,9.6rem);font-weight:950;text-transform:uppercase;line-height:.78;letter-spacing:-.09em;margin:18px 0}.sun{position:absolute;z-index:-1;right:-5%;bottom:-62%;width:65%;aspect-ratio:1;border-radius:50%;background:repeating-linear-gradient(0deg,#f8c25c 0 13px,#ed793e 13px 18px)}.poster-date{grid-column:2;align-self:end;font-weight:900;text-align:right}.programme{margin-top:14px;display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:12px}.programme details{border-top:2px solid #542c1d;padding-top:6px}.programme summary{font-weight:800}.programme p{font-size:.84rem}
@media(max-width:700px){.bar{padding:12px 16px}.bar span:not(.cross){display:none}.menu .shell,.clinic-main,.map-results,.agenda-main{grid-template-columns:1fr}.menu-rail{padding:20px 16px;gap:8px}.menu-rail h1 br{display:none}.menu-rail nav{grid-template-columns:repeat(3,1fr);font-size:.75rem;margin-bottom:0}.menu-board{padding:24px 16px}.catalogue-top{display:block}.product-grid{grid-template-columns:repeat(2,1fr)}.work-grid{grid-template-columns:1fr 1fr}.work-intro,.lead-work{grid-column:1/-1;grid-row:auto}.work-intro h1 br{display:none}.map{min-height:245px}.ops-grid{grid-template-columns:1fr 1fr}.ops-grid .route{grid-column:1/-1}.poster{padding:16px;min-height:250px;grid-template-columns:1fr}.poster-date{grid-column:1;text-align:left}.poster h1{font-size:clamp(3.1rem,13vw,5rem)}.programme{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
