:root{--ink: #edf2fb;--muted: #a7b1c4;--dim: #5f6b7e;--paper: #07101b;--panel: #0c1622;--line: rgba(158, 183, 216, .28);--accent: #7fb5ff;--accent-soft: #b9d6ff;--gold: #d6aa6d;--shadow: rgba(0, 0, 0, .48);--serif-latin: "Cormorant Garamond", Georgia, serif;--serif-ja: "Noto Serif JP", "Yu Mincho", "Hiragino Mincho ProN", serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--serif-ja);letter-spacing:0}body:before{position:fixed;inset:0;z-index:20;pointer-events:none;content:"";opacity:.18;background-image:radial-gradient(rgba(255,255,255,.42) .7px,transparent .7px);background-size:4px 4px;mix-blend-mode:soft-light}a{color:inherit;text-decoration:none}img,svg{display:block}.site-header{position:absolute;top:0;left:0;z-index:10;display:flex;align-items:center;justify-content:space-between;width:100%;padding:42px clamp(22px,4.4vw,58px)}.brand{display:inline-flex;align-items:center;flex:0 1 clamp(240px,25vw,380px);min-width:0;max-width:min(100%,42vw)}.brand__logo{width:100%;max-width:100%;height:auto;object-fit:contain}.global-nav{display:flex;align-items:center;gap:clamp(26px,4vw,64px);font-family:var(--serif-latin);font-size:16px;font-weight:700;letter-spacing:.14em}.global-nav a{position:relative;padding-block:6px;text-shadow:0 2px 16px rgba(0,0,0,.8)}.global-nav a:after{position:absolute;right:0;bottom:0;left:0;height:1px;content:"";background:var(--accent-soft);transform:scaleX(0);transform-origin:right;transition:transform .28s ease}.global-nav a:hover:after,.global-nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}.hero{position:relative;display:grid;min-height:700px;height:min(84vh,820px);place-items:center;overflow:hidden;background:linear-gradient(90deg,#04091033,#04091005 48%,#04091057),linear-gradient(180deg,#02070e0a,#02070e0f 58%,#07101b),url(/images/hero-night-terrace.webp) center / auto 112% no-repeat}.hero__shade{position:absolute;inset:0;background:radial-gradient(circle at 62% 54%,transparent 0 26%,rgba(3,7,13,.12) 48%,rgba(3,7,13,.4) 100%),linear-gradient(180deg,#050c1605,#050c167a)}.hero__content{position:relative;z-index:1;margin-top:78px;text-align:center;text-shadow:0 3px 18px rgba(0,0,0,.66)}.hero__lead{margin:0;font-size:clamp(38px,4.1vw,66px);font-weight:500;line-height:1.45}.hero__sub{margin:18px 0 0;color:var(--accent-soft);font-family:var(--serif-latin);font-size:clamp(15px,1.34vw,24px);font-weight:700;letter-spacing:.18em}.scroll-cue{position:absolute;bottom:40px;left:50%;z-index:2;display:grid;justify-items:center;gap:12px;color:#dce8fa;font-family:var(--serif-latin);font-size:13px;font-weight:700;letter-spacing:.12em;transform:translate(-50%)}.scroll-cue i{position:relative;display:block;width:1px;height:64px;background:#dbeaff80}.scroll-cue i:after{position:absolute;bottom:0;left:50%;width:7px;height:7px;content:"";background:#fff;border-radius:50%;transform:translate(-50%);box-shadow:0 0 18px #b9d6ffcc}.section-shell{position:relative;width:min(100% - 48px,1210px);margin-inline:auto}.section-kicker{margin:0 0 34px;color:var(--accent);font-family:var(--serif-latin);font-size:17px;font-weight:700;letter-spacing:.18em}.intro{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:clamp(48px,9vw,150px);padding:78px 0}.intro h1{margin:0;font-size:clamp(34px,3.4vw,56px);font-weight:500;line-height:1.7}.intro__copy{align-self:center;max-width:610px;color:#dbe3ef;font-size:16px;font-weight:600;line-height:2.25}.intro__copy p{margin:0}.watermark{position:absolute;right:-6px;bottom:8px;z-index:-1;color:#ffffff09;font-family:var(--serif-latin);font-size:clamp(88px,16vw,210px);font-weight:700;line-height:.8;pointer-events:none}.business{padding:18px 0 72px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:220px;display:grid;grid-template-columns:52px 1fr;gap:18px;align-items:start;padding:52px 26px 36px;border:1px solid var(--line);background:linear-gradient(145deg,#ffffff09,#ffffff03);box-shadow:inset 0 1px #ffffff0d;transition:border-color .28s ease,transform .28s ease,background .28s ease}.service-card:hover{border-color:#7fb5ff94;background:linear-gradient(145deg,#162b42bf,#09121de0);transform:translateY(-4px)}.service-card h2,.work-card h2{margin:0;font-size:18px;font-weight:600;line-height:1.6;word-break:keep-all;overflow-wrap:normal}.service-card p{margin:28px 0 0;color:#d3dce9;font-size:15px;font-weight:600;line-height:2}.service-card__icon{position:relative;width:54px;height:54px;color:var(--accent)}.service-card__icon:before,.service-card__icon:after,.service-card__icon span:before,.service-card__icon span:after{position:absolute;content:"";border:2px solid currentColor}.service-card__icon--people:before{top:5px;left:19px;width:15px;height:15px;border-radius:50%}.service-card__icon--people:after{right:5px;bottom:5px;left:5px;height:21px;border-radius:18px 18px 0 0}.service-card__icon--people span:before,.service-card__icon--people span:after{top:13px;width:12px;height:12px;border-radius:50%}.service-card__icon--people span:before{left:4px}.service-card__icon--people span:after{right:4px}.service-card__icon--helmet:before{right:3px;bottom:12px;left:3px;height:27px;border-radius:28px 28px 0 0}.service-card__icon--helmet:after{right:0;bottom:7px;left:0;height:7px}.service-card__icon--helmet span:before{top:7px;left:25px;width:0;height:26px;border-width:0 0 0 2px}.service-card__icon--board:before{inset:5px 9px 2px;border-radius:2px}.service-card__icon--board:after{top:0;left:20px;width:14px;height:10px;border-radius:2px;background:var(--panel)}.service-card__icon--board span:before,.service-card__icon--board span:after{left:19px;width:19px;height:0;border-width:2px 0 0}.service-card__icon--board span:before{top:22px}.service-card__icon--board span:after{top:34px}.works{padding:0 0 82px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-card{position:relative;min-height:255px;overflow:hidden;border:1px solid var(--line);background:#03070c}.work-card:after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 36%,rgba(0,0,0,.92))}.work-card img{width:100%;height:100%;min-height:255px;object-fit:cover;opacity:.86;transition:transform .6s ease,opacity .6s ease}.work-card:hover img{opacity:1;transform:scale(1.06)}.work-card__body{position:absolute;right:20px;bottom:22px;left:20px;z-index:1}.work-card p{margin:4px 0 0;color:#d3ddeb;font-size:14px;font-weight:600}.contact-band{position:relative;overflow:hidden;background:linear-gradient(90deg,#050c15f0,#050c159e 52%,#050c15e0),url(/images/contact-lounge.webp) center / cover}.contact-band__inner{width:min(100% - 48px,1210px);min-height:230px;display:grid;align-content:center;margin-inline:auto;padding:42px 0}.contact-band p{margin:0 0 30px;font-size:clamp(24px,2.6vw,42px);font-weight:500;line-height:1.75;text-shadow:0 5px 30px rgba(0,0,0,.9)}.contact-button{width:min(100%,430px);min-height:62px;display:grid;grid-template-columns:22px 1fr 54px;align-items:center;gap:14px;padding:0 28px;border:1px solid rgba(127,181,255,.72);background:#08111cb8;color:#f1f6ff;font-size:16px;font-weight:600;transition:background .28s ease,transform .28s ease}.contact-button:hover{background:#162c46cc;transform:translateY(-2px)}.contact-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.site-footer{width:min(100% - 48px,1210px);display:grid;grid-template-columns:minmax(300px,1fr) 280px;gap:58px;margin-inline:auto;padding:48px 0 22px;color:#d6deeb}.footer__info{padding-right:58px;border-right:1px solid rgba(158,183,216,.24)}.footer__logo{width:min(100%,360px);max-width:100%;height:auto;margin:0 0 18px;object-fit:contain}address{color:#bfc9d8;font-style:normal;font-size:14px;font-weight:600;line-height:2}.footer__nav{display:grid;align-content:start;gap:16px;font-family:var(--serif-latin);font-size:15px;font-weight:700;letter-spacing:.12em}.footer__nav a:hover,.footer__nav a:focus-visible{color:var(--accent-soft)}.copyright{grid-column:1 / -1;margin:0;color:#d6deebb8;font-family:var(--serif-latin);font-size:13px;text-align:center}@media(max-width:900px){.site-header{align-items:flex-start;gap:24px;padding-top:24px}.global-nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 20px;font-size:12px}.hero{min-height:620px;height:82vh;background-position:58% center}.intro,.service-grid,.work-grid,.site-footer{grid-template-columns:1fr}.intro{gap:24px;padding-top:58px}.service-card{min-height:190px}.footer__info{padding-right:0;border-right:0}}@media(min-width:901px)and (max-width:1080px){.service-card{grid-template-columns:46px 1fr;gap:14px;padding:46px 22px 32px}.service-card h2{font-size:16px}}@media(max-width:600px){.site-header{position:absolute;display:block}.brand{width:min(82vw,300px)}.brand__logo{width:100%}.global-nav{justify-content:flex-start;margin-top:18px}.hero{min-height:650px}.hero__content{width:min(100% - 36px,420px)}.hero__lead{font-size:36px}.hero__sub{font-size:13px;line-height:1.8}.section-shell,.contact-band__inner,.site-footer{width:min(100% - 32px,1210px)}.section-kicker{margin-bottom:20px}.intro h1{font-size:32px}.service-card{grid-template-columns:54px 1fr;padding:34px 22px 28px}.contact-button{grid-template-columns:22px 1fr 32px;padding:0 18px;font-size:14px}}
