:root{--ink:#10131a;--muted:#5a6475;--paper:#f7f4ec;--panel:#fff;--line:#d8d2c4;--accent:#146c67;--accent-strong:#0d4d49;--gold:#d49a2c;--coral:#c75c48;--shadow:0 18px 60px #10131a1f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Hiragino Sans,Yu Gothic,Meiryo,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}main{overflow:hidden}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:10;background:#f7f4ecdb;border-bottom:1px solid #d8d2c4c7;justify-content:space-between;align-items:center;padding:16px clamp(18px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.brand,.site-footer div{align-items:center;gap:10px;font-weight:900;display:inline-flex}.site-header nav{align-items:center;gap:clamp(14px,3vw,30px);display:flex}.site-header nav a{color:var(--muted);font-size:.9rem;font-weight:700}.hero{grid-template-columns:minmax(0,1.02fr) minmax(320px,.98fr);align-items:center;gap:44px;min-height:88vh;padding:132px clamp(20px,6vw,84px) 72px;display:grid;position:relative}.hero:before{content:"";z-index:-1;background-color:#0000;background-image:linear-gradient(#146c6714 1px,#0000 1px),linear-gradient(90deg,#146c6714 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0%,#0000 82%);mask-image:linear-gradient(#000 0%,#0000 82%)}.hero-copy{max-width:760px}.eyebrow{color:var(--accent);letter-spacing:0;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;margin-bottom:28px;font-size:clamp(2.65rem,6.4vw,5.9rem);line-height:1.02}h2{letter-spacing:0;margin-bottom:18px;font-size:clamp(2rem,4vw,3.4rem);line-height:1.14}h3{margin-bottom:12px;font-size:1.3rem}.lead{color:#394354;max-width:660px;font-size:clamp(1.05rem,2vw,1.22rem);line-height:1.9}.hero-actions,.form-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:30px;display:flex}.primary-button,.secondary-button{border-radius:999px;align-items:center;gap:9px;min-height:48px;padding:0 20px;font-weight:900;display:inline-flex}.primary-button{background:var(--accent);border:1px solid var(--accent);color:#fff}.secondary-button{border:1px solid var(--line);color:var(--ink);background:#ffffff9e}.hero-visual{aspect-ratio:1;box-shadow:var(--shadow);background:radial-gradient(circle at 58% 42%,#d49a2c57,#0000 28%),linear-gradient(135deg,#fdfbf6,#d9ece7 45%,#f1d7c9);border:1px solid #10131a14;border-radius:26px;place-items:center;min-width:300px;max-width:560px;display:grid;position:relative;transform:rotate(-1.5deg)}.hero-visual img{filter:drop-shadow(0 20px 35px #0d4d4940);width:46%;height:46%}.orbit{border:1px solid #0d4d4947;border-radius:999px;position:absolute}.orbit-one{width:74%;height:74%}.orbit-two{width:86%;height:52%;transform:rotate(40deg)}.signal{color:var(--accent-strong);background:#ffffffd1;border:1px solid #10131a1a;border-radius:999px;padding:10px 14px;font-size:.92rem;font-weight:900;position:absolute;box-shadow:0 12px 28px #10131a1f}.signal-one{top:22%;left:9%}.signal-two{top:18%;right:13%}.signal-three{bottom:14%;right:22%}.section,.contact-section,.band{padding:86px clamp(20px,6vw,84px)}.section-heading{max-width:760px}.section-heading p,.contact-copy p,.service-card p{color:var(--muted);line-height:1.85}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px;display:grid}.service-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-height:262px;padding:28px}.service-card svg{color:var(--coral);margin-bottom:30px}.band{background:var(--ink);color:#fff;grid-template-columns:.95fr 1.05fr;align-items:start;gap:28px;display:grid}.band .eyebrow{color:#f1c86f}.strength-list{gap:13px;margin:0;padding:0;list-style:none;display:grid}.strength-list li{background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:12px;min-height:56px;padding:14px 16px;font-weight:700;display:flex}.strength-list svg{color:#f1c86f;flex:none}.company-section{background:#fffaf0}.company-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;max-width:880px;margin:28px 0 0}.company-list div{grid-template-columns:180px 1fr;gap:18px;padding:22px 26px;display:grid}.company-list div+div{border-top:1px solid var(--line)}.company-list dt{color:var(--muted);font-weight:700}.company-list dd{margin:0;font-weight:900}.contact-section{grid-template-columns:.82fr 1.18fr;align-items:start;gap:42px;display:grid}.contact-note{color:var(--accent-strong);background:#e8f2ef;border:1px solid #bfded7;border-radius:8px;align-items:center;gap:12px;margin-top:26px;padding:16px;font-weight:700;display:flex}.contact-form{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:clamp(22px,4vw,34px)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}label{gap:8px;margin-bottom:16px;display:grid}label span{color:#3b4656;font-size:.92rem;font-weight:900}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fbfaf7;border-radius:8px;outline:none;width:100%;padding:13px 14px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #146c6724}.form-actions p{color:var(--muted);margin:0;font-size:.9rem}.site-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:30px clamp(20px,6vw,84px);display:flex}.site-footer p{color:var(--muted);align-items:center;gap:8px;margin:0;display:inline-flex}.site-footer small{color:var(--muted)}@media (max-width:900px){.site-header{flex-direction:column;align-items:flex-start;gap:12px}.hero,.band,.contact-section{grid-template-columns:1fr}.hero{padding-top:142px}.hero-visual{justify-self:center;width:min(100%,520px)}.service-grid{grid-template-columns:1fr}}@media (max-width:620px){.site-header nav{justify-content:space-between;width:100%}.site-header nav a{font-size:.82rem}.hero{padding-top:154px}.hero-visual{border-radius:18px;min-width:0}.form-grid,.company-list div{grid-template-columns:1fr}.company-list div{gap:8px}.site-footer{flex-direction:column;align-items:flex-start}}
