:root{--navy:#101a22;--navy-2:#14222b;--ink:#15232b;--mint:#bbf1d6;--mint-deep:#285d4e;--paper:#f6f8f6;--light:#e9efea;--muted:#60717a;--border:#dce5df;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.75;color:var(--ink);background:var(--paper);font-feature-settings:"palt" 1}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.055em}a{text-decoration:none;color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid #80cbb5;outline-offset:4px}a:hover{opacity:.84}.container{width:min(1136px,calc(100% - 64px));margin-inline:auto}.caps{font-size:10px;letter-spacing:.17em}.draft-notice{padding:8px 14px;background:#f5e6bb;color:#584916;text-align:center;font-size:11px;font-weight:750;letter-spacing:.025em}.notice-separator{opacity:.5;padding-inline:9px}.skip-link{position:absolute;top:-60px;left:8px;padding:12px 14px;background:white;color:black;z-index:100}.skip-link:focus{top:8px}
.site-header{position:relative;z-index:2;background:var(--navy);border-bottom:1px solid #33424b;color:white}.header-inner{min-height:81px;display:flex;align-items:center;gap:35px}.brand{display:inline-flex;align-items:center;gap:12px;flex:none}.brand-symbol{width:37px;height:37px;border-radius:11px;background:var(--mint);display:grid;grid-template-columns:repeat(2,7px);grid-template-rows:repeat(2,7px);gap:4px;place-content:center;transform:rotate(-10deg)}.brand-symbol span{display:block;border-radius:2px;background:#18332f}.brand-symbol span:nth-child(2){opacity:.4}.brand-symbol span:nth-child(3){opacity:.7}.brand-name{font-size:18px;font-weight:790;letter-spacing:.01em;white-space:nowrap}.brand-name>span{color:var(--mint);font-weight:450;letter-spacing:.05em;margin-left:5px}.desktop-nav{display:flex;gap:33px;margin-left:auto;color:#b6c6c7;font-size:12px;font-weight:600}.header-contact{font-size:12px;border:1px solid #61706e;border-radius:5px;padding:10px 16px;white-space:nowrap}.mobile-menu{display:none}
.hero{position:relative;background:var(--navy);color:white;overflow:hidden;padding:92px 0 0}.hero-orbit{position:absolute;pointer-events:none;width:900px;height:900px;border:1px solid #80bca621;border-radius:50%;top:-400px;right:-350px;box-shadow:0 0 0 95px #80bca605,0 0 0 210px #80bca604}.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:82px;align-items:center;position:relative;padding-bottom:96px}.eyebrow,.section-kicker{font-size:11px;letter-spacing:.18em;font-weight:800;color:var(--mint)}.eyebrow{margin-bottom:30px;display:flex;gap:13px;align-items:center}.eyebrow-rule{width:24px;height:1px;background:var(--mint)}.hero h1{font-size:clamp(44px,5vw,70px);font-weight:790;line-height:1.38;margin-bottom:27px}.hero h1 span{color:var(--mint)}.hero-description{max-width:545px;font-size:14px;line-height:2.15;color:#c0cece}.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:33px}.button{display:inline-flex;justify-content:center;align-items:center;padding:13px 22px;border:1px solid transparent;border-radius:5px;font-size:13px;min-height:47px;font-weight:750;transition:background .2s,transform .2s}.button:hover{opacity:1;transform:translateY(-2px)}.button-primary{background:var(--mint);color:#14372b}.button-primary:hover{background:#d0f5e0}.button-outline{border-color:#667c7d;color:#ebf3f0}.button-outline:hover{background:#ffffff12}.hero-disclaimer{color:#8d9fa6;font-size:11px;margin-top:25px;line-height:1.8}.hero-display{position:relative;border:1px solid #44554e;background:linear-gradient(153deg,#1c2e34 0,#14232d 78%);border-radius:9px;padding:28px 30px 25px;box-shadow:0 32px 70px #0000002e;min-height:470px}.display-top,.display-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#7c9f9a;font-size:10px;letter-spacing:.07em}.display-bulbs{display:flex;gap:5px}.display-bulbs i{width:5px;height:5px;background:#58716e;border-radius:50%}.display-bulbs i:first-child{background:var(--mint)}.display-heading{font-size:clamp(30px,3.5vw,49px);font-weight:680;line-height:1.25;letter-spacing:-.065em;margin-top:51px}.display-heading span{color:var(--mint)}.display-note{margin-top:11px;color:#9bafad;font-size:12px}.display-list{margin-top:35px;margin-bottom:31px;border-top:1px solid #40534e}.display-list>div{display:grid;grid-template-columns:33px 1fr auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid #40534e}.display-list span{color:var(--mint);font-size:11px;font-weight:750}.display-list strong{font-size:12px;letter-spacing:.13em;font-weight:600}.display-list small{font-size:11px;color:#93a8a6}.display-bottom{font-size:9px}.display-status{display:flex;align-items:center;gap:7px;white-space:nowrap}.display-status span{width:6px;height:6px;border-radius:50%;background:var(--mint)}.hero-bottom{position:relative;display:flex;align-items:center;gap:42px;border-top:1px solid #304048;padding:22px 0;color:#7d9494;letter-spacing:.16em;font-size:10px;font-weight:650}
.section{padding:108px 0}.section-heading{margin-bottom:47px}.two-col-heading{display:grid;grid-template-columns:1.17fr .83fr;align-items:end;gap:65px}.section-kicker{color:#26775c;margin-bottom:23px}.section-heading h2,.pricing-copy h2{font-size:clamp(35px,4vw,51px);line-height:1.42}.section-heading>p,.pricing-copy>p:not(.section-kicker){font-size:14px;line-height:2;color:#60717a;max-width:390px;padding-bottom:6px}.services-section{background:#f7f9f7}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.service-card{position:relative;background:#fff;border:1px solid #e0e8e3;min-height:300px;padding:25px 23px 32px;overflow:hidden;transition:transform .25s,border-color .25s}.service-card:hover{border-color:#abd4c2;transform:translateY(-4px)}.service-card-top{display:flex;flex-direction:column;gap:49px}.service-card-top span:first-child{font-size:30px;font-weight:780;color:#c4d4cc;line-height:1}.service-card-top span:last-child{font-size:10px;letter-spacing:.14em;font-weight:800;color:#39836a}.service-card h3{font-size:20px;margin:12px 0 12px}.service-card p{color:#64747b;font-size:12px;line-height:2}.service-bar{position:absolute;bottom:0;left:0;width:39%;height:4px;background:#b6e7cf}.service-card:nth-child(2) .service-bar{width:52%}.service-card:nth-child(3) .service-bar{width:32%}.service-card:nth-child(4) .service-bar{width:67%}
.principle{background:#e0ece5;padding:46px 0}.principle-inner{display:grid;grid-template-columns:230px 1fr;gap:45px;align-items:start}.principle-label{letter-spacing:.16em;font-weight:850;font-size:10px;color:#3a7c64;padding-top:12px}.principle-inner>p:last-child{font-size:clamp(23px,2.9vw,37px);line-height:1.6;letter-spacing:-.05em;font-weight:700}.principle-inner>p:last-child span{color:#588673}
.process-section{background:#13212a;color:#f5f9f7}.process-section .section-kicker{color:var(--mint)}.process-section .section-heading>p{color:#b0c0c1}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.process-card{background:#1b2a34;border:1px solid #384d51;padding:29px 27px 27px;min-height:335px;display:flex;flex-direction:column}.process-top{display:flex;align-items:center;justify-content:space-between;color:var(--mint);font-size:11px;font-weight:750;letter-spacing:.1em;margin-bottom:45px}.process-top span:last-child{font-size:30px;color:#6d918b;letter-spacing:-.05em}.process-card h3{font-size:20px;line-height:1.5;margin-bottom:15px}.process-card p{font-size:12px;color:#b0bdc1;line-height:2;flex:1}.process-tags{display:flex;align-items:center;gap:10px;border-top:1px solid #435356;padding-top:19px;font-size:10px;color:#95b0aa;margin-top:21px;white-space:nowrap}.process-tags span{width:3px;height:3px;background:#76a18f;border-radius:50%}.process-caption{font-size:11px;color:#8fa5a8;margin-top:25px}
.pricing-section{background:#eaf1ed}.pricing-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:105px;align-items:center}.pricing-copy h2{margin-bottom:23px}.pricing-copy>p:not(.section-kicker){max-width:370px}.pricing-aside{max-width:355px;margin-top:43px;display:flex;align-items:flex-start;gap:17px}.aside-mark{height:57px;width:4px;background:#69ba92;flex:none}.pricing-aside p{color:#4c7262;font-size:12px;line-height:2}.pricing-card{background:white;border:1px solid #d5e4dc;border-radius:9px;padding:36px 40px 33px;box-shadow:0 20px 70px #2b63400d}.pricing-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#38745e;font-size:10px;font-weight:850;letter-spacing:.12em}.plan-type{padding:4px 12px;border-radius:99px;background:#e2f3e9;white-space:nowrap;letter-spacing:0}.pricing-name{font-size:13px;color:#576a6e;margin-top:34px}.price{display:flex;align-items:baseline;gap:3px;color:#18292a;white-space:nowrap;margin-top:0}.price .yen{font-size:30px;font-weight:650}.price strong{font-size:clamp(43px,5vw,63px);letter-spacing:-.055em;line-height:1.4}.price-period{margin-left:10px;color:#708084;font-size:13px}.price-total{font-size:12px;color:#566e70;margin-top:-2px}.dot-divider{display:inline-block;width:3px;height:3px;border-radius:50%;background:#8cac9b;vertical-align:middle;margin:0 11px}.tax-notice{background:#fff8e6;color:#796333;border-radius:4px;padding:10px 12px;font-size:11px;margin-top:23px}.pricing-card hr{border:0;border-top:1px solid #e4ece7;margin:29px 0 24px}.includes-title{font-size:13px;font-weight:800;margin-bottom:13px}.includes-list{list-style:none;margin:0 0 23px;padding:0}.includes-list li{position:relative;padding:7px 0 7px 21px;font-size:12px;color:#49605e}.includes-list li:before{content:"";position:absolute;top:17px;left:0;width:7px;height:7px;background:#8ccbaf;border-radius:50%}.button-dark{display:flex;width:100%;background:#172d2a;color:white}.button-dark:hover{background:#284e43}.pricing-footnote{font-size:10px;color:#708180;line-height:1.9;margin-top:16px}
.expectations-section{background:#f8faf8}.responsibility-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.responsibility-card{background:#fff;border:1px solid #e1e8e3;padding:30px 33px 34px}.responsibility-index{color:#348063;letter-spacing:.15em;font-size:10px;font-weight:850;margin-bottom:19px}.responsibility-card h3{font-size:22px;margin-bottom:11px}.responsibility-card p{color:#61737a;font-size:13px;max-width:445px}
.contact-section{background:#101b23;color:white;padding:95px 0}.contact-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:105px;align-items:center}.contact-section h2{font-size:clamp(37px,4.2vw,55px);line-height:1.4}.contact-description{font-size:14px;color:#afc2c2;max-width:465px;margin-top:23px}.contact-card{border:1px solid #425559;border-radius:8px;padding:34px 36px;background:#1a2b33}.contact-card-label{color:#98cdb9;letter-spacing:.14em;font-size:10px;font-weight:750;margin-bottom:20px}.contact-card h3{font-size:20px;margin-bottom:12px}.contact-card>p:not(.contact-card-label){color:#b9c8c8;font-size:13px}.unavailable-contact{margin-top:25px;padding:12px 14px;border:1px solid #566361;color:#c5d0c0;background:#2b3a3d;border-radius:4px;font-size:12px;display:flex;align-items:center;gap:10px}.status-circle{width:7px;height:7px;border-radius:50%;background:#deb96f}
.site-footer{background:#091118;color:#acbdbc;padding-top:40px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:37px}.footer-top p{font-size:11px;letter-spacing:.05em;color:#809696}.footer-bottom{border-top:1px solid #2e3a40;padding:22px 0 27px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;color:#789092}.footer-bottom nav{display:flex;gap:24px}.footer-bottom i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#7c9892;vertical-align:middle;margin:0 9px}
/* Shared legal and privacy pages */
.header{background:var(--navy);color:white;border-bottom:1px solid #33424b}.brand-mark{display:grid;place-items:center;width:36px;height:36px;color:#132a25;font-size:22px;font-weight:900;background:var(--mint);border-radius:10px}.brand-accent{color:var(--mint);font-weight:500;margin-left:7px}.nav-cta{font-size:12px;border:1px solid #61706e;border-radius:5px;padding:10px 16px;white-space:nowrap}.legal-layout{padding:86px 0 125px;max-width:820px}.legal-layout h1{font-size:clamp(30px,3.6vw,44px);line-height:1.45;margin:0 0 16px}.legal-layout>.subtitle{font-size:14px;color:var(--muted);margin-bottom:42px}.eyebrow-dark{color:#26775c}.notice{background:#fff4d8;border:1px solid #ebd29d;padding:17px 20px;font-size:13px;color:#70592e;margin-bottom:38px}.legal-table{width:100%;border-collapse:collapse;background:#fff}.legal-table tr{border-bottom:1px solid #e0e8e1}.legal-table th,.legal-table td{padding:18px;text-align:left;vertical-align:top;font-size:13px}.legal-table th{width:32%;background:#edf3ef;font-weight:750}.placeholder{color:#99682d;font-weight:650}.legal-note{font-size:12px;color:#718080;line-height:2;margin-top:24px}.policy p,.policy li{font-size:14px;line-height:2;color:#52656b}.policy h2{font-size:19px;margin-top:32px;margin-bottom:10px}.footer{background:#091118;color:#b6c6c6;padding:36px 0}.footer .footer-main{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer nav{font-size:12px}
@media(max-width:1050px){.desktop-nav{gap:20px}.header-inner{gap:24px}.hero-grid{gap:42px}.pricing-layout,.contact-layout{gap:48px}.service-card{padding-inline:20px}.service-card p{font-size:12px}}
@media(max-width:850px){.desktop-nav,.header-contact{display:none}.mobile-menu{display:block;margin-left:auto;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;font-size:12px;font-weight:700;display:flex;align-items:center;gap:11px;padding:10px 0}.mobile-menu summary::-webkit-details-marker{display:none}.menu-lines{display:block;width:20px;height:12px;border-top:2px solid #a9d6c2;border-bottom:2px solid #a9d6c2}.mobile-menu nav{position:absolute;right:0;top:39px;background:#1b2a33;border:1px solid #4e6263;min-width:220px;padding:10px;border-radius:6px;box-shadow:0 20px 40px #0005}.mobile-menu nav a{display:block;padding:12px;font-size:13px}.hero-grid{grid-template-columns:1fr;gap:58px}.hero{padding-top:74px}.hero-display{max-width:640px;width:100%;min-height:410px}.display-heading{font-size:44px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:275px}.two-col-heading{gap:34px}.process-card{padding-inline:20px}.process-tags{gap:6px;font-size:9px}.pricing-layout,.contact-layout{gap:35px}}
@media(max-width:650px){.container{width:min(100% - 36px,1136px)}.draft-notice{font-size:10px;line-height:1.7}.notice-separator{padding-inline:5px}.header-inner{min-height:70px}.brand-name{font-size:16px}.brand-symbol{width:33px;height:33px}.hero{padding-top:64px}.hero-grid{padding-bottom:66px}.hero h1{font-size:clamp(42px,10vw,55px)}.hero-description{font-size:13px;line-height:2}.hero-actions{gap:10px}.button{padding:12px 18px;font-size:12px}.hero-display{padding:23px 21px;min-height:auto}.display-heading{font-size:clamp(33px,8vw,42px);margin-top:38px}.display-list{margin-top:26px;margin-bottom:24px}.display-bottom{flex-wrap:wrap}.hero-bottom{gap:17px;flex-wrap:wrap;font-size:9px;padding:19px 0}.section{padding:76px 0}.section-heading{margin-bottom:32px}.two-col-heading,.pricing-layout,.contact-layout,.principle-inner{grid-template-columns:1fr}.two-col-heading{gap:17px}.section-heading h2,.pricing-copy h2{font-size:clamp(32px,8vw,43px)}.section-heading>p,.pricing-copy>p:not(.section-kicker){font-size:13px}.service-grid,.process-grid,.responsibility-grid{grid-template-columns:1fr}.service-card{min-height:auto;padding-bottom:31px}.service-card-top{gap:24px}.principle{padding:36px 0}.principle-inner{gap:10px}.principle-inner>p:last-child{font-size:24px}.process-card{min-height:280px}.process-top{margin-bottom:31px}.process-card p{flex:none}.pricing-copy .section-kicker{margin-bottom:17px}.pricing-aside{margin-top:23px}.pricing-card{padding:27px 22px}.price strong{font-size:50px}.contact-section{padding:75px 0}.contact-layout{gap:36px}.contact-card{padding:27px 23px}.footer-top,.footer-bottom{align-items:start;flex-direction:column}.footer-top{gap:17px}.footer-bottom{gap:17px}.footer-bottom nav{flex-direction:column;gap:10px}.legal-layout{padding:66px 0 95px}.legal-table th,.legal-table td{display:block;width:100%;padding:12px 16px}.legal-table td{padding-bottom:20px}.header .header-inner{gap:15px}.nav-cta{font-size:11px;padding:7px 9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a,.button,.service-card{transition:none}}

/* v4: privacy-first contact content. All v3 visual sections are retained. */
.contact-assurance{margin-top:15px!important;color:#96b3ab!important;font-size:11px!important;line-height:1.9!important}
.privacy-inline-link{color:#2b755c;text-decoration:underline;text-underline-offset:3px}
.privacy-inline-link:hover{text-decoration-thickness:2px}
.legal-table td{overflow-wrap:anywhere}
.legal-table td strong{font-weight:750}
.contact-rule{background:#e6f1e9;border:1px solid #cbded0;border-left:4px solid #65b88f;padding:15px 18px;margin:0 0 28px;font-size:13px;color:#27533f;line-height:1.9}
.legal-scope{font-size:12px;color:#536b69;line-height:1.85;margin-top:26px}

/* v5: verified-in-code mail link; the account itself has not been delivery-tested. */
.contact-email{display:block;margin-top:25px;padding:12px 14px;border:1px solid #718d81;color:#d6f4e5;background:#243b3c;border-radius:4px;font-size:clamp(11px,1.4vw,13px);font-weight:700;line-height:1.7;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}
.contact-email:hover{background:#2b4946;opacity:1}
