:root{--navy:#003366;--blue:#0052a5;--pale:#dcebf9;--ice:#f8fbfe;--red:#c8161d;--ink:#253b50;--line:#d8e2ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:16px/1.95 'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}p{margin:0 0 1.5em}h1,h2,h3,h4{color:var(--navy);line-height:1.6;margin:0 0 24px;font-weight:500}h1,h2,.serif{font-family:'Yu Mincho','Hiragino Mincho ProN',serif}h1{font-size:44px;letter-spacing:.06em}h2{font-size:32px;letter-spacing:.04em}h3{font-size:21px}h4{font-size:18px}.wrap{width:min(1160px,calc(100% - 96px));margin:auto}.narrow{max-width:880px}.eyebrow{font:500 13px/1.4 Arial,sans-serif;color:var(--blue);letter-spacing:.19em;text-transform:uppercase;display:block;margin-bottom:22px}.eyebrow:before{content:'';display:inline-block;width:24px;height:2px;background:var(--red);vertical-align:middle;margin-right:14px}header{height:96px;position:sticky;top:0;background:#fffffff7;border-bottom:1px solid var(--line);z-index:20;backdrop-filter:blur(15px)}.header-in{display:flex;align-items:center;justify-content:space-between;height:100%;gap:30px}.brand{color:var(--navy);font-size:21px;font-weight:700;letter-spacing:.04em;line-height:1.4}.brand small{display:block;font:11px/1.8 Arial;letter-spacing:.19em}.nav{display:flex;align-items:center;gap:32px;font-size:14px;font-weight:600}.nav a:hover{color:var(--blue)}.nav .contact{background:var(--navy);color:white;padding:12px 24px}.menu{display:none}.hero{position:relative;background:var(--ice);overflow:hidden;padding:96px 0 64px;min-height:590px}.hero .wrap{position:relative;z-index:2}.hero h1{font-size:clamp(32px,3.8vw,54px);max-width:900px;line-height:1.65}.hero .lead{font-size:22px;line-height:1.95;max-width:760px;color:var(--navy)}.hero-lines{position:absolute;width:600px;height:700px;right:-180px;top:40px;border:1px solid #aac9e3;transform:rotate(30deg);pointer-events:none}.hero-lines:before,.hero-lines:after{content:'';position:absolute;inset:45px;border:1px solid #bfd6eb}.hero-lines:after{inset:90px}.hero-note{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cadaea;padding-top:25px;margin-top:66px;font:12px Arial;letter-spacing:.14em;color:#5a7898}.btn{display:inline-flex;justify-content:space-between;gap:40px;align-items:center;border:1px solid var(--navy);background:var(--navy);color:#fff;padding:15px 25px;min-width:215px;cursor:pointer;font-size:15px}.btn:after{content:'→';font-size:22px;line-height:1}.btn:hover{background:var(--blue);border-color:var(--blue)}.btn.light{background:white;color:var(--navy)}.text-link{display:inline-flex;gap:24px;border-bottom:1px solid var(--blue);padding-bottom:6px;font-size:15px;color:var(--blue)}section{padding:54px 0}.intro{max-width:900px;font-size:18px;line-height:2.1}.split{display:grid;grid-template-columns:1fr 1.5fr;gap:75px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:44px}.section-head h2{margin-bottom:0}.pale{background:var(--ice)}.issues{display:grid;grid-template-columns:1fr 1fr;gap:0 48px;list-style:none;padding:0;margin:30px 0 0}.issues li{border-bottom:1px solid var(--line);padding:21px 0 21px 24px;position:relative}.issues li:before{content:'';position:absolute;left:0;top:34px;width:6px;height:6px;background:var(--blue)}.approach-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;margin-top:50px;border-top:1px solid var(--line)}.approach-grid>div{padding:30px;border-right:1px solid var(--line)}.approach-grid>div:first-child{padding-left:0}.approach-grid>div:last-child{border:0}.num{font:18px Arial;color:var(--blue);display:block;margin-bottom:18px}.featured-service{background:var(--navy);color:white;display:grid;grid-template-columns:1.1fr 1fr;gap:55px;padding:48px;margin-bottom:45px}.featured-service h3{color:white;font-size:28px;font-family:'Yu Mincho',serif}.featured-service .eyebrow{color:#c2dbf3}.featured-service p{margin-bottom:18px}.featured-service .text-link{color:white;border-color:#9fb9d5}.service-group{margin:45px 0 18px;font-size:17px;border-left:3px solid var(--red);padding-left:16px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.service-card{display:block;border-top:1px solid var(--line);padding:30px 0;position:relative}.service-card h3{margin:10px 35px 16px 0;font-size:22px}.service-card .arrow{position:absolute;right:0;top:65px;color:var(--blue)}.service-card p{font-size:15px;margin:0;color:#52687b}.service-card:hover h3{color:var(--blue)}.knowledge{background:var(--pale)}.delivery{border-top:1px solid #bcd1e5;margin-top:45px;padding-top:45px}.members{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.portrait{background:linear-gradient(140deg,#f8fbfe,#dcebf9);height:310px;position:relative;display:flex;align-items:center;justify-content:center;border-bottom:3px solid var(--navy);color:#6a879f;margin-bottom:24px;overflow:hidden}.portrait:before{content:'';position:absolute;width:150px;height:210px;border:1px solid #b9cde0;transform:rotate(25deg)}.portrait span{font:11px Arial;letter-spacing:.24em;position:relative;background:#edf5fc;padding:10px}.member-role{font-size:14px;color:#5e768b}.member-name{font-size:29px;font-family:'Yu Mincho',serif;letter-spacing:.12em;margin:8px 0 18px}.member-card p{font-size:15px}.cta{background:var(--navy);color:white}.cta h2{color:white}.cta .eyebrow{color:#bed7ed}.cta .split{align-items:center}.cta p{max-width:710px}.cta .btn{justify-self:end}.footer{padding:45px 0 24px;background:var(--ice);font-size:13px}.footer-top{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-links{display:flex;gap:24px;flex-wrap:wrap}.copyright{border-top:1px solid var(--line);padding-top:20px;margin-top:35px;font:11px Arial;letter-spacing:.08em}.breadcrumb{font-size:13px;color:#637b91;padding:28px 0}.page-head{padding:32px 0 65px;background:var(--ice);border-bottom:1px solid var(--line)}.page-head h1{font-size:37px}.page-head .tagline{font-size:23px;font-family:'Yu Mincho',serif;max-width:900px;color:var(--navy)}.page-head p{max-width:900px}.contents{display:flex;gap:28px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:25px 0;font-size:14px}.detail-section{padding:39px 0;border-bottom:1px solid var(--line)}.detail-section h2{font-size:27px}.outcomes{display:grid;gap:28px}.outcome{padding:28px 34px;background:var(--ice);border-left:2px solid var(--blue)}.outcome p:last-child{margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.85}th,td{text-align:left;vertical-align:top;padding:20px;border-bottom:1px solid var(--line)}th{background:var(--pale);font-weight:500;color:var(--navy)}td:first-child{color:var(--navy);min-width:145px}tbody tr:nth-child(even){background:var(--ice)}.note{font-size:14px;color:#627789}.member-hero{display:grid;grid-template-columns:260px 1fr;gap:65px;align-items:center}.member-hero .portrait{height:290px;margin:0}.member-hero h1{font-size:46px;letter-spacing:.15em}.bio p{line-height:2.05}.publication{list-style:none;padding:0}.publication li{padding:20px 0;border-bottom:1px solid var(--line)}.publication time{display:block;color:#5d7890;font-size:14px;margin-bottom:5px}.flow{counter-reset:flow}.flow-item{display:grid;grid-template-columns:55px 1fr;gap:20px;border-top:1px solid var(--line);padding:28px 0}.flow-item:before{counter-increment:flow;content:'0' counter(flow);font:24px Arial;color:var(--blue);padding-top:5px}.flow-item h3{margin-bottom:10px}.flow-item p{margin:0}.form-shell{background:var(--ice);padding:42px;margin-top:35px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:block}.field.full{grid-column:1/-1}.field span{display:block;font-size:15px;margin-bottom:8px;color:var(--navy)}.required{font-style:normal;font-size:11px;color:var(--red);margin-left:10px}.optional{font-size:11px;color:#657d94;margin-left:10px}input,textarea{width:100%;border:1px solid #acbfd1;background:white;border-radius:0;padding:12px;color:var(--ink)}input:focus,textarea:focus{outline:2px solid #0052a5;outline-offset:1px}textarea{min-height:180px;resize:vertical}.consent{display:flex;gap:12px;align-items:start;margin:25px 0;font-size:14px}.consent input{width:18px;margin-top:5px;flex-shrink:0}.consent a{text-decoration:underline;color:var(--blue)}.form-actions{display:flex;gap:20px;flex-wrap:wrap}.preview-note{padding:12px 16px;border-left:3px solid var(--blue);background:var(--pale);font-size:14px;margin-bottom:25px}.notice-list{font-size:14px;padding-left:22px}.notice-list li{margin-bottom:10px}.confirmation{white-space:pre-wrap;overflow-wrap:anywhere}.hidden{display:none!important}.company-table th{width:200px}.skip{position:absolute;left:-1000px}.skip:focus{left:15px;top:10px;background:white;z-index:100;padding:10px}@media(min-width:1500px){.hero{padding-top:120px;padding-bottom:80px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.nav{gap:18px}.brand{font-size:17px}.split{gap:35px;grid-template-columns:1fr 1.4fr}.members{gap:20px}.portrait{height:240px}.featured-service{gap:25px;padding:32px}.member-name{font-size:25px}}@media(max-width:680px){header{height:76px}.wrap{width:calc(100% - 40px)}.brand{font-size:16px}.brand small{font-size:9px}.menu{display:block;background:none;border:1px solid var(--line);color:var(--navy);font-size:13px;padding:8px 12px}.nav{display:none;position:absolute;top:76px;left:0;width:100%;background:white;padding:24px;box-shadow:0 12px 14px #00336610}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.hero{padding:65px 0 35px;min-height:0}.hero h1{font-size:32px;line-height:1.7}.hero .lead{font-size:18px}.hero-note{margin-top:40px;font-size:10px}.hero-lines{right:-400px;opacity:.55}section{padding:36px 0}h2{font-size:27px}.split,.featured-service,.service-grid,.members,.member-hero,.form-grid{grid-template-columns:1fr;gap:28px}.intro{font-size:16px}.issues{grid-template-columns:1fr;gap:0}.approach-grid{grid-template-columns:1fr}.approach-grid>div{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.section-head{display:block}.featured-service{padding:28px}.featured-service h3{font-size:25px}.members{gap:45px}.portrait{height:330px}.member-card{display:block}.cta .btn{justify-self:start}.footer-top{flex-direction:column}.footer-links{gap:15px}.page-head h1{font-size:29px}.page-head .tagline{font-size:20px}.detail-section{padding:27px 0}.detail-section h2{font-size:24px}.outcome{padding:24px}.member-hero{gap:24px}.member-hero .portrait{width:100%;max-width:330px;height:310px}.member-hero h1{font-size:37px}.form-shell{padding:24px 18px}.field.full{grid-column:auto}.contents{gap:12px 22px}.company-table th{width:100px}td,th{padding:14px}.table-wrap table{min-width:600px}.company-table td{min-width:0}.flow-item{grid-template-columns:35px 1fr;gap:15px}}

.service-card p,.member-card p,table{font-size:16px}.btn:disabled{opacity:.55;cursor:not-allowed}
/* Version 2: quieter tables and explicit flow */
th{background:var(--pale)}tbody tr:nth-child(even),tbody tr:nth-child(odd){background:white}td,th{border-bottom:1px solid #bdccda;border-left:0;border-right:0}.detail-section{border-bottom:3px solid #f0f5fa;margin-bottom:12px}.excerpt{font-size:14px;font-weight:400;letter-spacing:0;font-family:inherit;color:#60778e}.challenge-title{display:inline-block;font-size:14px;color:var(--blue);font-weight:600;line-height:1.6;margin-bottom:10px;border-bottom:1px solid #b4c9dc;padding-bottom:3px}.issues p{margin-bottom:0}.issues:has(.challenge-title) li:before{display:none}.issues:has(.challenge-title) li{padding-left:0}.approach-grid{gap:48px;border-top:0}.approach-grid>div{position:relative;border:0;padding:20px 0!important}.approach-grid .num{display:flex;justify-content:center;align-items:center;width:46px;height:46px;background:var(--navy);color:white;border-radius:50%;font-size:17px;margin-bottom:23px}.approach-grid>div:not(:last-child):after{content:'▶';position:absolute;right:-33px;top:32px;font-size:17px;color:var(--blue)}#process tbody td:first-child{position:relative;padding-bottom:34px;width:22%}#process tbody tr:not(:last-child) td:first-child:after{content:'▼';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);background:white;color:var(--blue);font-size:16px;line-height:22px;padding:0 10px;z-index:2}.cta .flow-link{color:white;border-color:#9fb9d5}.company-table th{background:var(--pale)}.review-links{margin-top:25px;display:flex;gap:12px;font-size:13px;color:#526d87}.review-links a{text-decoration:underline}.nav{gap:25px}.hero h1{max-width:950px}@media(max-width:680px){.approach-grid{gap:30px}.approach-grid>div:not(:last-child):after{right:auto;left:14px;top:auto;bottom:-22px;transform:rotate(90deg)}.excerpt{font-size:13px}#process tbody td:first-child{min-width:150px}.hero h1{font-size:32px}}
.type-comparison{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}.type-card{border:1px solid var(--line);padding:26px;min-width:0}.type-selector{display:block;font-size:14px;font-weight:600;color:var(--navy)}.type-selector select{display:block;width:100%;padding:12px 8px;margin:8px 0 18px;background:white;color:var(--navy);border:1px solid #9db3c9;font-size:15px}.type-description{font-size:15px;min-height:95px}.sample-label{font-family:Arial,'Yu Gothic',sans-serif!important;display:block;font-size:12px;line-height:1.7;color:#5e758a;margin:26px 0 12px;padding-top:18px;border-top:1px solid #e5edf4}.specimen h1{font-size:32px;letter-spacing:0;line-height:1.7;margin-bottom:16px}.specimen h2{font-size:26px;letter-spacing:0;margin-bottom:16px}.specimen h3{font-size:20px;margin-bottom:16px}.specimen h4{font-size:18px;margin-bottom:16px}.specimen h1:lang(en){font-size:36px}.specimen h2:lang(en){font-size:28px}.specimen p{font-size:16px;line-height:1.95}.specimen .en-label{font-size:14px;font-weight:500;letter-spacing:.13em}.specimen table{min-width:0!important}.font-map{margin-top:36px}.font-map h3{font-size:18px}.font-map table{font-size:13px;min-width:0!important}.font-map td,.font-map th{min-width:0;padding:10px}.font-status{font-size:13px;color:#5e758a;margin-top:18px}.type-links{display:flex;flex-wrap:wrap;gap:20px}.design-rationale{padding-top:65px;max-width:900px}.design-rationale li{margin-bottom:20px}@media(max-width:800px){.type-comparison{grid-template-columns:1fr}.type-card{padding:20px}.type-description{min-height:0}}
.type-preview-bar{position:fixed;bottom:16px;right:16px;z-index:30;display:flex;gap:18px;align-items:center;background:white;color:var(--navy);border:1px solid #aec2d5;box-shadow:0 5px 25px #00336618;padding:12px 18px;font:14px/1.5 Arial,'Yu Gothic',sans-serif}.type-preview-bar a{color:var(--blue);text-decoration:underline}@media(max-width:800px){.menu{display:block;background:none;border:1px solid var(--line);color:var(--navy);font-size:13px;padding:8px 12px}.nav{display:none;position:absolute;top:96px;left:0;width:100%;background:white;padding:24px}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:20px}.type-preview-bar{left:12px;right:12px;bottom:12px;font-size:13px}}@media(max-width:680px){.nav{top:76px}}
/* Lighten table headings relative to the first version. */
th,.company-table th{background:#edf5fc;background:color-mix(in srgb,var(--pale) 50%,white)}
/* Version 3: adopted typography, integrated knowledge geometry. */
.company-intro p:first-child{margin-bottom:.55em}.hero-geometry{position:absolute;right:-65px;top:-10px;width:clamp(480px,54vw,800px);height:100%;pointer-events:none;opacity:.9}.hero-geometry img{width:100%;height:100%;object-fit:contain}.hero .wrap{z-index:2}@media(max-width:900px){.hero-geometry{right:-190px;opacity:.5}}@media(max-width:680px){.hero-geometry{right:-290px;top:0;opacity:.32}.company-intro p:first-child{margin-bottom:.45em}}

/* Version 4: subdued converging lines and complete company table rule. */
.company-table{border-top:1px solid #bdccda}.hero-geometry{opacity:.7}@media(max-width:900px){.hero-geometry{opacity:.45}}@media(max-width:680px){.hero-geometry{opacity:.28}}

/* Version 5: supplied brand and coordinated portraits. */
.brand{display:block;flex-shrink:0;line-height:1}.brand-logo{display:block;width:320px;aspect-ratio:690/122;position:relative;overflow:hidden;mix-blend-mode:multiply}.brand-logo img{position:absolute;max-width:none;width:130.434783%;height:auto;left:-14.492754%;top:-133.606557%}.header-in{gap:24px}.portrait{height:auto!important;aspect-ratio:4/5;display:block;background:#f1f3f5;border:0;max-width:100%;}.portrait:before{display:none}.portrait img{display:block;width:100%;height:100%;object-fit:cover}.member-hero .portrait{width:260px;max-width:100%;height:auto!important}.member-card .portrait{max-width:340px}.nav{gap:20px}@media(max-width:1050px){.brand-logo{width:270px}.nav{gap:16px;font-size:14px}}@media(max-width:800px){.brand-logo{width:280px}.member-hero .portrait{width:300px}.member-card .portrait{max-width:340px}}@media(max-width:480px){.brand-logo{width:240px}.header-in{gap:12px}.member-hero .portrait{width:280px}}@media(max-width:360px){.brand-logo{width:205px}}

/* Version 6: editorial photography and service symbols. */
.hero{background:linear-gradient(90deg,rgba(0,28,58,.82),rgba(0,35,68,.58) 65%,rgba(0,35,68,.35)),url('assets/top-v7.webp') center/cover no-repeat;color:white}.hero h1,.hero .lead,.hero .eyebrow,.hero .text-link,.hero-note{color:white}.hero .text-link{border-color:#ffffff88}.hero-note{border-color:#ffffff44}.section-photo{display:block;width:100%;max-width:340px;height:auto;margin:18px 0 28px}.service-icon{display:inline-block;width:32px;height:32px;object-fit:contain;vertical-align:middle;margin-right:12px;flex-shrink:0}.challenge-title{display:flex;align-items:center}.challenge-title .service-icon{width:26px;height:26px;margin-right:10px}.featured-service .service-icon{display:block;width:38px;height:38px;margin-bottom:12px}.member-card .portrait{width:180px;max-width:100%;margin-bottom:24px}.member-hero .portrait{width:180px}.member-hero{grid-template-columns:180px 1fr;gap:44px}@media(max-width:800px){.section-photo{max-width:300px}.member-card .portrait,.member-hero .portrait{width:160px}.member-hero{grid-template-columns:160px 1fr;gap:26px}}@media(max-width:540px){.member-hero{grid-template-columns:1fr}.hero{background-position:58% center}.section-photo{max-width:280px}.member-card .portrait{width:150px}}

/* Version 7: brighter landscape with a restrained text panel. */
.hero{background-image:linear-gradient(90deg,rgba(0,28,58,.16),rgba(0,35,68,.05)),url('assets/top-v7.webp')}.hero-copy{width:fit-content;max-width:100%;padding:30px 36px 32px;background:rgba(0,27,54,.76);border-left:2px solid rgba(255,255,255,.4)}.hero-copy h1{font-size:clamp(32px,4.2vw,58px);margin-bottom:22px}.hero-copy .lead{margin-bottom:24px}.hero-copy .text-link{margin:0}.hero-note{color:#fff;text-shadow:0 1px 4px #001c38;background:rgba(0,27,54,.5);padding:9px 14px;border:0}.section-photo{width:66.6667%;max-width:226.667px}@media(max-width:800px){.section-photo{max-width:200px}}@media(max-width:540px){.hero-copy{padding:24px 20px}.hero-copy h1{font-size:30px}.hero-copy .lead{font-size:16px}.section-photo{max-width:186.667px}}

/* Version 8: lighter panel, compact rhythm, updated brand. */
.hero-copy{background:rgba(0,27,54,.46);text-shadow:0 1px 3px rgba(0,20,40,.5)}
.hero-copy h1{font-size:clamp(18px,3.65vw,48px);letter-spacing:.02em;white-space:nowrap;max-width:none}
.section-head{margin-bottom:27px}.approach-grid{margin-top:30px}.delivery{margin-top:27px;padding-top:27px}.service-group{margin-top:27px}.featured-service{margin-bottom:27px}
.issues:has(.challenge-title) li{border-bottom:0}
.section-photo{margin-top:14px;margin-bottom:0}
.brand-logo{aspect-ratio:730/138}.brand-logo img{width:123.287671%;left:-11.643836%;top:-134.057971%}
@media(max-width:540px){.hero-copy{padding:22px 14px}.hero-copy h1{font-size:clamp(15px,4.25vw,23px);letter-spacing:0}}

/* Version 9: refined transparency, heading wrapping and aligned profile links. */
.hero-copy{background:rgba(0,27,54,.30)}.hero-note{background:rgba(0,27,54,.30)}
.challenges-heading{font-size:clamp(24px,2.4vw,30px);letter-spacing:.02em}
.challenges-heading span{display:inline-block;max-width:100%}
.member-card{display:flex;flex-direction:column;align-items:flex-start}
.member-card>.text-link{margin-top:auto}
.member-card>a:first-child{display:block;width:100%}
header,.footer{background:#edf5fc}
header{backdrop-filter:none}
.brand-logo{mix-blend-mode:multiply}
@media(max-width:800px){.nav{background:#edf5fc}}

/* Member qualifications below corporate roles. */
.member-qualification{display:block;font-size:14px;line-height:1.8;color:#5e768b;margin-top:3px}

/* Version 11: fill the initial viewport below the header. */
:root{--header-height:96px}
.hero{min-height:calc(100vh - var(--header-height));min-height:calc(100dvh - var(--header-height));display:flex;flex-direction:column}
.hero>.wrap{flex:1;display:flex;flex-direction:column;margin-top:0;margin-bottom:0}
.hero-copy{flex-shrink:0}
.hero-note{margin-top:auto}
.hero-copy+.hero-note{padding-top:9px;transform:translateY(0)}
.hero>.wrap{gap:40px}
@media(max-width:680px){:root{--header-height:76px}}

/* Version 12: remove trailing inner spacing so section edges match. */
.company-intro>p:last-child{margin-bottom:0}
.issues:has(.challenge-title)>li:nth-last-child(-n+2){padding-bottom:0}
.approach-grid>div{padding-bottom:0!important}
.approach-grid>div>p:last-child{margin-bottom:0}
#services>.wrap>.service-grid:last-child>.service-card{padding-bottom:0}
@media(max-width:680px){
.issues:has(.challenge-title)>li:nth-last-child(2){padding-bottom:21px}
.approach-grid>div:not(:last-child){padding-bottom:20px!important}
#services>.wrap>.service-grid:last-child>.service-card:not(:last-child){padding-bottom:30px}
}

/* Version 13: consistent copy width and heading alignment. */
.company-intro{max-width:none}
.aligned-copy>div:nth-child(2){padding-top:40.2px}
.privacy-content h2{font-size:27px}
@media(max-width:680px){.aligned-copy>div:nth-child(2){padding-top:0}.privacy-content h2{font-size:23px}}

/* Version 14: supplied video, portrait and mobile reading rhythm. */
.hero{background:#003366 url('assets/hero-v18-poster.webp') center/cover no-repeat}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#001c3830,transparent);pointer-events:none}
.hero-copy{padding:28px 32px;background:rgba(0,27,54,.38)}
.hero .lead>span{display:block}
.hero-note{align-self:flex-end;width:fit-content;gap:24px;padding:9px 14px}
.video-toggle{background:transparent;border:1px solid #ffffff99;color:white;padding:6px 10px;cursor:pointer;font-size:14px;letter-spacing:0}
.featured-service h3{display:flex;align-items:flex-start;gap:14px}
.featured-service h3 .service-icon{margin:5px 0 0;flex:0 0 38px}
.portrait:has(img[src*="kida-v14"]){position:relative}
.portrait img[src*="kida-v14"]{position:absolute;width:128%;height:128%;max-width:none;left:-14%;top:-2%;object-fit:cover;object-position:center top}
.privacy-content a{text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:800px){
.split{grid-template-columns:1fr;gap:26px}.aligned-copy>div:nth-child(2){padding-top:0}
.hero-copy h1{font-size:clamp(1.125rem,3.6vw,1.75rem);white-space:normal;line-height:1.6}
.hero .lead{font-size:1rem;line-height:1.9}
}
@media(max-width:680px){
.hero{padding:48px 0 24px}.hero-copy{padding:22px 14px}.hero>.wrap{gap:32px}
.hero-copy h1{font-size:clamp(1rem,4vw,1.375rem);letter-spacing:0;white-space:normal}
.hero .lead{font-size:1rem}.hero .lead>span{max-width:100%}
.hero-note{gap:12px;flex-wrap:wrap;font-size:10px;max-width:100%;justify-content:flex-end}
.hero .eyebrow{font-size:12px;letter-spacing:.1em}
.challenges-heading,h2{font-size:1.45rem;line-height:1.65;letter-spacing:.01em}
.challenges-heading span{display:inline}
.knowledge h2 br{display:none}
.featured-service{padding:24px 20px}.featured-service h3{font-size:1.45rem}
.service-card h3{font-size:1.2rem;line-height:1.65}.service-icon{width:28px;height:28px}
.page-head{padding-bottom:36px}.page-head h1{font-size:1.6rem;letter-spacing:.02em;overflow-wrap:anywhere}.page-head .tagline{font-size:1.15rem}
.detail-section h2,.privacy-content h2{font-size:1.25rem}.outcome{padding:20px}.outcome h3{font-size:1.125rem}
.brand-logo{width:min(56vw,240px)}.menu{font-size:14px;flex-shrink:0}
.company-table th{width:90px}.company-table td{overflow-wrap:anywhere}
}

/* Version 15: supplied corporate logo and balanced portrait composition. */
.hero-copy{border-left:0}
.video-toggle{font-size:12px;font-weight:400;border-color:#ffffff40;min-height:36px;padding:5px 9px}
.brand-logo{aspect-ratio:2048/298;mix-blend-mode:normal}
.brand-logo img{position:static;width:100%;height:auto;max-width:100%;left:auto;top:auto}
.portrait:has(img[src*="kida-v18"]){position:relative;background:#ebeff3}
.portrait img[src*="kida-v18"]{position:absolute;width:135%;height:auto;max-width:none;left:-17.5%;top:-3.3%;object-fit:cover;object-position:center top}
.member-card>p:has(+p),.page-head .wrap>p:not(.tagline):has(+p),.detail-section p:has(+p),.privacy-content p:has(+p){margin-bottom:.65em}

/* Version 16: tighter service introduction and mobile hero typography. */
.service-head{padding-bottom:22px}
.service-head>.wrap>p:last-child{margin-bottom:0}
.service-head+.wrap>.contents{padding-top:18px;padding-bottom:18px}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.form-actions{display:flex;gap:12px;flex-wrap:wrap}
button:disabled{opacity:.6;cursor:wait}
@media(max-width:680px){
.hero-copy{width:100%;container-type:inline-size}
.hero-copy h1{font-size:clamp(1rem,6.1cqw,1.8rem);letter-spacing:0;white-space:normal}
.hero-copy .lead{font-size:clamp(.625rem,3.75cqw,.95rem);letter-spacing:0;line-height:1.95}
.service-head{padding-bottom:18px}
}
