:root{--ink:#101418;--muted:#637079;--bg:#f7f9f6;--card:#ffffff;--line:#dce5df;--aqua:#08746a;--lime:#c6ff4d;--blue:#102a43;--mint:#eaf4ee;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg)}body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at 78% 18%,#d8fff280 0 18%,transparent 28%),radial-gradient(circle at 12% 86%,#dceaff90 0 18%,transparent 30%),linear-gradient(135deg,#fbfcfa 0%,#eef5f1 100%)}body:after{content:"";position:fixed;inset:0;z-index:-1;opacity:.34;background-image:linear-gradient(#102a430b 1px,transparent 1px),linear-gradient(90deg,#102a430b 1px,transparent 1px),linear-gradient(115deg,transparent 0 58%,#c6ff4d26 58% 69%,transparent 69%);background-size:34px 34px,34px 34px,100% 100%}.page{width:min(1160px,calc(100% - 28px));margin:0 auto;padding:28px 0 82px}.hero{min-height:calc(100svh - 42px);display:grid;grid-template-columns:minmax(0,1.04fr) minmax(300px,.9fr);align-items:center;gap:clamp(22px,5vw,72px);position:relative}.copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:#ffffffc9;color:var(--aqua);font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(10px)}h1{max-width:760px;margin:18px 0 14px;font-size:clamp(48px,7.4vw,92px);line-height:.94;letter-spacing:0;color:var(--ink);font-weight:950;text-wrap:balance}.copy>p{margin:0;color:var(--muted);font-size:19px;line-height:1.55;max-width:650px}.hero-points{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.hero-points span{padding:8px 10px;border-radius:999px;background:#fff;color:var(--blue);border:1px solid var(--line);font-size:12px;font-weight:850}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 18px}.primary,.secondary{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:0 19px;border-radius:8px;text-decoration:none;font-weight:900;font-size:13px}.primary{background:var(--ink);color:var(--white);box-shadow:0 18px 36px #10141620}.secondary{border:1px solid var(--line);color:var(--ink);background:#ffffffd8}.status{display:inline-grid;grid-template-columns:12px 1fr;gap:10px;align-items:center;border:1px solid var(--line);border-radius:8px;background:#ffffffd8;color:var(--ink);padding:10px 12px;text-align:left;cursor:pointer;backdrop-filter:blur(10px)}.status i{width:10px;height:10px;border-radius:50%;background:#d85858}.status.open i{background:#22af6c}.status strong,.status small{display:block}.status strong{font-size:12px}.status small{font-size:11px;color:var(--muted)}.portrait{margin:0;position:relative;justify-self:end;width:min(520px,100%);min-height:560px;display:grid;align-items:end;transform:rotate(-1deg)}.portrait:before{content:"";position:absolute;right:2%;bottom:42px;width:86%;height:74%;border-radius:8px;background:linear-gradient(160deg,var(--blue),var(--aqua));clip-path:polygon(10% 0,100% 0,90% 100%,0 90%);box-shadow:0 26px 70px #102a4326}.portrait:after{content:"";position:absolute;right:0;bottom:20px;width:78%;height:58%;border:1px solid #10141628;border-radius:8px;transform:rotate(5deg)}.portrait img{position:relative;z-index:1;width:108%;max-width:none;margin-left:-6%;display:block;filter:drop-shadow(0 28px 36px #10141640)}.portrait figcaption{position:absolute;z-index:2;left:8px;bottom:30px;padding:10px 12px;border-radius:8px;background:var(--lime);color:var(--ink);font-size:11px;font-weight:950;letter-spacing:.05em}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:-28px;position:relative;z-index:3}.quick-links a{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;min-height:86px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fffffff0;color:var(--ink);text-decoration:none;box-shadow:0 14px 30px #24362e10;backdrop-filter:blur(10px)}.quick-links span,.mini-icon{width:42px;height:42px;border-radius:8px;background:var(--mint);display:grid;place-items:center}.quick-links img,.mini-icon img{width:23px;height:23px;object-fit:contain}.quick-links strong,.quick-links small{display:block;grid-column:2}.quick-links span{grid-row:1/3}.quick-links strong{align-self:end;font-size:13px}.quick-links small{align-self:start;color:var(--muted);font-size:11px;line-height:1.35;margin-top:4px;word-break:normal}.about-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.about-strip article{min-height:132px;padding:18px;border-radius:8px;border:1px solid var(--line);background:#fffffff0;box-shadow:0 12px 30px #24362e0e}.about-strip strong{display:block;font-size:15px;color:var(--ink);margin-bottom:8px}.about-strip span{display:block;color:var(--muted);font-size:13px;line-height:1.55}.note{margin-top:14px;padding:18px;border-radius:8px;background:var(--ink);color:#fff;display:grid;gap:5px}.note span{color:#dbe3df;line-height:1.55}.badge{position:fixed;right:12px;bottom:12px;padding:8px 11px;border:1px solid #10141616;border-radius:999px;background:#ffffffe8;color:var(--muted);text-decoration:none;font-size:8px;backdrop-filter:blur(10px)}.badge b{color:var(--ink)}p{margin:0;color:var(--muted);line-height:1.65}.hours-modal{position:fixed;inset:0;background:#10141666;display:none;align-items:center;justify-content:center;padding:18px;z-index:20}.hours-modal.show{display:flex}.hours-box{width:min(430px,100%);background:#fff;border-radius:8px;border:1px solid var(--line);padding:18px;box-shadow:0 25px 70px #10141638}.hours-head{display:flex;justify-content:space-between;align-items:center}.hours-head h2{margin:0}.hours-close{border:0;background:var(--mint);width:34px;height:34px;border-radius:8px;font-size:22px;cursor:pointer}.hours-list{display:grid;gap:8px;margin-top:16px}.hours-row{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:8px;font-size:13px}.hours-row span{color:var(--muted);text-align:right}.back{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--aqua);text-decoration:none;font-size:12px;font-weight:900}.services-page{padding-top:24px}.services-hero{min-height:auto;display:block;padding:58px 0 22px}.services-hero h1{font-size:clamp(46px,8vw,86px);margin-bottom:10px}.services-hero p{max-width:650px;font-size:16px}.services-list{display:grid;gap:10px}.service{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px #24362e10;overflow:hidden}.service summary{min-height:82px;display:grid;grid-template-columns:42px 1fr 34px;gap:13px;align-items:center;padding:16px;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.service h2{margin:0;color:var(--ink);font-size:18px}.service small{display:inline-block;margin-top:5px;color:var(--aqua);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.service summary b{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--aqua);font-size:18px}.service[open] summary b{background:var(--ink);color:#fff;transform:rotate(45deg)}.detail{padding:0 16px 16px 71px}.detail p{font-size:14px}.meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.meta span{padding:7px 9px;border-radius:8px;background:var(--mint);color:var(--blue);font-size:11px;font-weight:800}footer{margin-top:34px;color:var(--muted);font-size:12px}@media(max-width:860px){.page{width:min(100% - 22px,600px);padding-top:18px}.hero{min-height:auto;grid-template-columns:1fr;padding-top:18px}.portrait{order:-1;width:min(370px,92%);min-height:390px;justify-self:center}.portrait img{width:112%;margin-left:-8%}.copy>p{font-size:15px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.quick-links,.about-strip{grid-template-columns:1fr;margin-top:24px}.quick-links{gap:9px}.quick-links a{grid-template-columns:40px minmax(0,1fr);min-height:72px;padding:12px 14px}.quick-links span{width:40px;height:40px}.quick-links small{font-size:12px}.about-strip{gap:10px}.about-strip article{min-height:auto;padding:16px}.note{padding:18px 20px}h1{font-size:clamp(45px,13vw,68px)}.services-hero{padding-top:38px}.detail{padding-left:16px}.service summary{grid-template-columns:38px 1fr 32px}}@media(max-width:430px){h1{font-size:45px}.hero-actions{grid-template-columns:1fr}.quick-links a{grid-template-columns:40px minmax(0,1fr)}.quick-links small{overflow-wrap:break-word}.primary,.secondary{width:100%}}
