
:root{--p:#006c80;--deep:#073b4c;--a:#00a6a6;--ink:#102a33;--muted:#60747b;--line:#dbe7e9;--bg:#f4f8f8;--white:#fff;--warm:#f3eee3;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.75;background:#fff}
a{color:inherit;text-decoration:none}button,input,select{font:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}
.topline{background:var(--deep);color:#dff4f3;font-size:12px;padding:7px 0}.topline .wrap{display:flex;justify-content:space-between}
header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{height:78px;display:flex;align-items:center;gap:28px}.logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:24px;color:var(--deep);margin-right:auto}.logo-mark{width:42px;height:42px;border-radius:50% 50% 48% 52%;background:var(--p);position:relative;overflow:hidden}.logo-mark:after{content:"";position:absolute;width:46px;height:19px;background:#fff;border-radius:50%;left:-9px;top:22px;transform:rotate(-8deg)}
nav{display:flex;gap:25px;font-size:14px;font-weight:700}.nav-actions{display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border:1px solid var(--p);font-weight:800;border-radius:5px;color:var(--p);background:#fff;cursor:pointer}.btn.primary{background:var(--p);color:#fff}.btn.dark{background:var(--deep);color:#fff;border-color:var(--deep)}.menu{display:none;border:0;background:none;font-size:27px}
.hero{min-height:590px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(105deg,#edf8f7 0%,#edf8f7 48%,#c8e7e6 48%,#e5f2ee 100%)}
.hero:after{content:"";position:absolute;width:720px;height:420px;border-radius:55% 45% 0 60%;right:-80px;bottom:-180px;background:rgba(0,108,128,.14);transform:rotate(-9deg)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center;position:relative;z-index:1}.eyebrow{font-size:13px;font-weight:900;letter-spacing:.16em;color:var(--p);text-transform:uppercase}.hero h1{font-size:clamp(42px,5.5vw,76px);line-height:1.13;letter-spacing:-.045em;margin:15px 0 22px}.hero p{font-size:18px;max-width:560px}.hero-actions{display:flex;gap:10px;margin-top:30px}.island-card{height:390px;position:relative}.island-card .sea{position:absolute;inset:0;border-radius:44% 56% 20% 60%;background:linear-gradient(155deg,#087f91,#5dc4c1 62%,#d9efe7);transform:rotate(4deg);box-shadow:0 25px 70px rgba(7,59,76,.14)}.island-card .land{position:absolute;width:72%;height:44%;right:9%;bottom:17%;background:#e9dcae;border-radius:63% 37% 54% 46%;transform:rotate(-8deg);box-shadow:inset 0 -18px 0 rgba(76,143,112,.22)}.island-card .label{position:absolute;right:2%;top:8%;background:#fff;padding:15px 18px;border-radius:4px;box-shadow:0 12px 40px rgba(7,59,76,.12);font-size:13px}.island-card .label b{display:block;font-size:20px;color:var(--deep)}
.notice{border-bottom:1px solid var(--line);background:#fff}.notice .wrap{display:grid;grid-template-columns:160px 1fr auto;align-items:center;min-height:68px;gap:20px}.notice-label{font-size:13px;font-weight:900;color:var(--p)}.notice a{font-weight:700}.section{padding:92px 0}.section.alt{background:var(--bg)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px;gap:30px}.section-head h2{font-size:clamp(30px,4vw,48px);line-height:1.2;letter-spacing:-.03em;margin:7px 0}.section-head p{max-width:520px;color:var(--muted)}
.purpose{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.purpose a{min-height:190px;padding:27px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.purpose a:hover{background:#eff8f7;transform:translateY(-2px)}.purpose .num{font-size:12px;color:var(--p);font-weight:900}.purpose strong{font-size:19px}.arrow{font-size:24px;color:var(--p)}
.service-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:14px}.service{min-height:340px;padding:34px;position:relative;overflow:hidden;background:var(--deep);color:#fff;display:flex;flex-direction:column;justify-content:end}.service:nth-child(2){background:#147f89}.service:nth-child(3){background:#d9e9e4;color:var(--deep)}.service:before{content:"";position:absolute;width:250px;height:250px;border:1px solid rgba(255,255,255,.22);border-radius:50%;top:-100px;right:-60px}.service h3{font-size:28px;margin:7px 0}.service p{margin:0;opacity:.86}.service .eyebrow{color:inherit;opacity:.7}
.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.plan{border:1px solid var(--line);padding:30px;background:#fff;position:relative}.plan.recommended{border:2px solid var(--p)}.badge{position:absolute;right:15px;top:15px;background:var(--p);color:#fff;font-size:11px;font-weight:900;padding:5px 9px}.speed{font-size:31px;font-weight:900;color:var(--deep)}.price{font-size:36px;font-weight:900;margin:18px 0}.price small{font-size:13px}.muted{color:var(--muted)}.campaign{margin-top:18px;background:#fff7e8;border-left:4px solid #d69b28;padding:14px 17px;font-weight:700}
.channel{background:var(--deep);color:#fff}.channel .section-head p{color:#c7dcdf}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.program{border-top:1px solid #4a7079;padding:25px 0}.program .tag{font-size:11px;letter-spacing:.14em;color:#8edbd8}.program h3{font-size:23px;margin:9px 0 3px}.program p{color:#c7dcdf}
.area-box{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.area-ui{background:#fff;border:1px solid var(--line);padding:30px;box-shadow:0 18px 55px rgba(7,59,76,.07)}select{width:100%;height:54px;border:1px solid #b7cbcf;padding:0 14px;background:#fff}.result{margin-top:12px;padding:14px;background:#edf8f7;display:none}.result.show{display:block}
.user-panels{display:grid;grid-template-columns:1fr 1fr;gap:14px}.user-panel{padding:38px;background:#eef7f6}.user-panel:nth-child(2){background:#f3eee3}.user-panel h3{font-size:28px;margin-top:0}.links{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.links a{padding:12px 0;border-bottom:1px solid rgba(16,42,51,.15);font-weight:700}
.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:120px 100px 1fr 30px;gap:16px;align-items:center;padding:19px 0;border-bottom:1px solid var(--line)}.news-item time{color:var(--muted);font-size:13px}.news-item .cat{font-size:11px;font-weight:800;color:var(--p)}
.bottom-cta{padding:70px 0;background:#dff1ee}.bottom-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.bottom-cta h2{font-size:36px;margin:0 0 5px}.phone{font-size:30px;font-weight:900;color:var(--deep)}
footer{background:#062e3a;color:#d4e3e5;padding:55px 0 90px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:35px}.footer-grid h4{color:#fff}.footer-grid a{display:block;font-size:13px;margin:8px 0}.copyright{margin-top:40px;padding-top:20px;border-top:1px solid #31535b;font-size:11px;color:#8ba7ad}
.mobile-cta{display:none}
.page-hero{padding:75px 0;background:var(--bg)}.page-hero h1{font-size:48px;margin:8px 0}.content{padding:65px 0}.content h2{font-size:32px}.info-table{width:100%;border-collapse:collapse}.info-table th,.info-table td{padding:16px;border-bottom:1px solid var(--line);text-align:left}.info-table th{width:28%;background:#f7fafa}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{font-weight:800;cursor:pointer}
@media(max-width:900px){nav,.nav-actions{display:none}.menu{display:block}.hero{min-height:auto;padding:70px 0}.hero-grid{grid-template-columns:1fr}.island-card{height:270px}.purpose,.plan-grid,.program-grid{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr}.service{min-height:230px}.area-box{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.mobile-cta{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-top:1px solid var(--line)}.mobile-cta a{min-height:58px;display:flex;align-items:center;justify-content:center;font-weight:900}.mobile-cta a:last-child{background:var(--p);color:#fff}body{padding-bottom:58px}}
@media(max-width:600px){.wrap{width:min(calc(100% - 28px),var(--max))}.topline{display:none}.nav{height:66px}.hero{padding:50px 0}.hero h1{font-size:43px}.hero p{font-size:16px}.hero-actions{flex-direction:column}.island-card{height:220px}.notice .wrap{grid-template-columns:90px 1fr;padding:10px 0}.notice .arrow{display:none}.section{padding:65px 0}.section-head{display:block}.purpose,.plan-grid,.program-grid,.user-panels{grid-template-columns:1fr}.purpose a{min-height:125px}.service{padding:25px}.news-item{grid-template-columns:95px 75px 1fr}.news-item .arrow{display:none}.bottom-cta .wrap{display:block}.phone{font-size:25px}.footer-grid{grid-template-columns:1fr}.links{grid-template-columns:1fr}.page-hero h1{font-size:38px}}


/* ===== V2 / Brand photography + contemporary interaction ===== */
header{transition:height .35s ease,box-shadow .35s ease,background .35s ease}
header.scrolled{box-shadow:0 10px 35px rgba(7,59,76,.08);background:rgba(255,255,255,.88)}
header.scrolled .nav{height:64px}
.nav{transition:height .35s cubic-bezier(.22,1,.36,1)}
.hero{background:#e8f4f2}
.hero-photo{height:480px;position:relative;overflow:hidden;border-radius:3px;clip-path:inset(0 0 0 0)}
.hero-photo img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.04);transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
.hero-photo:hover img{transform:scale(1)}
.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(3,37,46,.55))}
.hero-photo-caption{position:absolute;z-index:2;left:24px;bottom:22px;color:white;display:flex;flex-direction:column}
.hero-photo-caption span{font-size:10px;letter-spacing:.18em;font-weight:800}.hero-photo-caption b{font-size:19px}
.hero:after{width:48vw;height:48vw;right:-24vw;bottom:-34vw;background:rgba(0,166,166,.12)}
.service{transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s ease}
.service:hover{transform:translateY(-7px);box-shadow:0 25px 60px rgba(7,59,76,.15)}
.plan{transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}
.plan:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(7,59,76,.09)}
.btn{transition:transform .25s ease,background .25s ease,color .25s ease,box-shadow .25s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,108,128,.15)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1)}
.reveal.in-view{opacity:1;transform:none}
.menu{width:46px;height:46px;position:relative;cursor:pointer}
.menu span{display:block;position:absolute;width:23px;height:1.5px;background:var(--deep);left:11px;transition:.3s}
.menu span:first-child{top:18px}.menu span:last-child{top:27px}
.drawer-backdrop{position:fixed;inset:0;background:rgba(4,31,39,.36);backdrop-filter:blur(4px);z-index:89;opacity:0;pointer-events:none;transition:.35s}
.mobile-drawer{position:fixed;z-index:90;right:0;top:0;height:100dvh;width:min(430px,92vw);background:#f8fbfa;padding:26px 28px 32px;transform:translateX(105%);transition:transform .5s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column}
.drawer-open .mobile-drawer{transform:none}.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}.drawer-open{overflow:hidden}
.drawer-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line);font-size:12px;letter-spacing:.18em}
.drawer-close{border:0;background:transparent;font-size:34px;font-weight:200;cursor:pointer}
.drawer-nav{display:block!important;margin-top:18px}.drawer-nav a{display:flex!important;justify-content:space-between;align-items:center;padding:16px 2px;border-bottom:1px solid var(--line);font-size:18px;font-weight:800}.drawer-nav a span{font-size:10px;color:#8aa0a5;font-weight:500}
.drawer-contact{margin-top:auto;padding-top:24px}.drawer-contact small{display:block;color:var(--muted)}.drawer-contact>a:not(.btn){font-size:27px;font-weight:900;color:var(--deep);display:block;margin:5px 0 15px}
.drawer-contact .btn{width:100%}
.scroll-progress{position:fixed;z-index:100;top:0;left:0;width:0;height:2px;background:var(--a);pointer-events:none}
@media(min-width:901px){.mobile-drawer,.drawer-backdrop{display:none}}
@media(max-width:900px){.menu{display:block}.hero-photo{height:420px}}
@media(max-width:600px){
 .hero-grid{gap:32px}.hero-photo{height:310px;margin:0 -14px;width:calc(100% + 28px)}
 .hero-photo-caption{left:20px;bottom:18px}.hero-photo-caption b{font-size:17px}
 .hero h1{font-size:clamp(40px,12vw,53px)}
 .section-head h2{font-size:34px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}
 *,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

/* ===== V3 generated-comp-inspired redesign ===== */
.logo small{display:block;font-size:8px;letter-spacing:.03em;font-weight:700}.compact{min-height:42px;padding:0 15px;font-size:12px}
.v3-hero{height:min(720px,78vh);min-height:610px;position:relative;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,43,64,.68),rgba(1,53,72,.24) 58%,rgba(0,0,0,.03))}
.hero-content{position:relative;z-index:2;padding-top:105px}.hero-kicker{font-size:11px;letter-spacing:.18em;font-weight:900}.v3-hero h1{font-size:clamp(48px,6vw,80px);line-height:1.12;letter-spacing:-.045em;margin:14px 0 18px}.v3-hero p{font-size:17px;font-weight:600;text-shadow:0 1px 12px rgba(0,0,0,.2)}
.hero-service-pills{display:flex;gap:28px;margin:28px 0 30px}.hero-service-pills a{display:grid;grid-template-columns:42px auto;grid-template-rows:auto auto;column-gap:10px;align-items:center}.hero-service-pills i{grid-row:1/3;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;color:#0584ba;font-style:normal;font-weight:900}.hero-service-pills b{font-size:13px}.hero-service-pills small{font-size:10px;opacity:.86}.hero-actions{display:flex;gap:10px}.btn.white{background:#fff;color:#063c55;border-color:#fff}.btn.glass{background:rgba(0,41,60,.16);border-color:rgba(255,255,255,.8);color:#fff;backdrop-filter:blur(10px)}.photo-credit{position:absolute;z-index:2;right:20px;bottom:14px;font-size:9px;opacity:.75}
.important{background:#fff;box-shadow:0 8px 30px rgba(7,59,76,.09);position:relative;z-index:3}.important .wrap{min-height:64px;display:grid;grid-template-columns:160px 100px 1fr auto;gap:18px;align-items:center;font-size:13px}.important b{color:#e33f59}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e33f59;margin-right:8px}
.section-title-row,.split-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.section-title-row h2,.split-heading h2{font-size:42px;line-height:1.18;margin:6px 0}.section-title-row>p,.split-heading>p{max-width:430px;color:var(--muted)}.soft{background:#f6fafb}
.visual-purpose{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.visual-purpose a{background:#fff;border:1px solid var(--line);overflow:hidden;position:relative;transition:.4s}.visual-purpose img{width:100%;height:150px;object-fit:cover;display:block;transition:.55s}.visual-purpose a:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(7,59,76,.1)}.visual-purpose a:hover img{transform:scale(1.035)}.visual-purpose div{padding:22px}.visual-purpose b{font-size:20px;line-height:1.35}.visual-purpose small{display:block;color:var(--muted);margin-top:7px}.purpose-icon{position:absolute;left:18px;top:128px;width:46px;height:46px;border-radius:50%;background:#0785c6;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;border:4px solid #fff}
.photo-services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.photo-services>a{background:#fff;border:1px solid var(--line);transition:.4s}.photo-wrap{height:230px;overflow:hidden}.photo-wrap img{width:100%;height:100%;object-fit:cover;transition:.6s}.photo-services>a:hover img{transform:scale(1.045)}.service-copy{padding:24px}.service-copy span{font-size:11px;color:#0785c6;font-weight:900}.service-copy h3{font-size:26px;margin:3px 0}.service-copy p{color:var(--muted)}.service-copy b{color:#0785c6;font-size:13px}
.lifestyle-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.life-plan{border:1px solid var(--line);padding:22px;background:#fff;position:relative}.life-plan.featured{border:2px solid #0785c6;box-shadow:0 16px 45px rgba(7,133,198,.1)}.life-plan em{position:absolute;right:12px;top:12px;background:#f64e72;color:#fff;font-style:normal;font-size:11px;font-weight:900;padding:5px 10px;z-index:2}.plan-image{height:145px;margin:-22px -22px 18px;overflow:hidden}.plan-image img{width:100%;height:100%;object-fit:cover}.life-plan>span{color:#0785c6;font-weight:900}.life-plan h3{font-size:45px;color:#0668a0;margin:0}.life-plan h3 small{font-size:18px}.life-plan p{min-height:54px;color:var(--muted)}.life-price{border-top:1px solid var(--line);padding-top:14px}.life-price b{font-size:30px;color:#073b4c}.life-plan>a{display:block;text-align:center;margin-top:16px;border:1px solid #91cbe5;border-radius:25px;padding:8px;color:#087ab2;font-size:12px;font-weight:900}
.tv-showcase{background:linear-gradient(105deg,#0b5d7e,#0b8fa5);color:#fff}.tv-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center}.tv-copy h2{font-size:48px;line-height:1.2}.tv-copy p{color:#d6f0f3}.light{color:#b9edf0}.tv-course-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.tv-course-stack div{min-height:200px;background:#fff;color:var(--ink);padding:25px;display:flex;flex-direction:column;justify-content:end}.tv-course-stack span{color:#0785c6;font-size:12px;font-weight:900}.tv-course-stack b{font-size:20px;margin:5px 0}.tv-course-stack small{color:var(--muted)}
.program-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;overflow:auto;padding-bottom:10px}.program-strip>a{min-width:190px;border:1px solid var(--line);background:#fff}.program-thumb{height:110px;background-size:cover;background-position:center}.program-thumb.sea{background-image:url('https://images.pexels.com/photos/7501178/pexels-photo-7501178.jpeg?auto=compress&cs=tinysrgb&w=700')}.program-thumb.festival{background:linear-gradient(135deg,#f0c64c,#e95b5b)}.program-thumb.council{background:linear-gradient(135deg,#ba8c64,#6d4b35)}.program-thumb.sports{background:linear-gradient(135deg,#2e7fb3,#ef6b61)}.program-thumb.sunset{background:linear-gradient(135deg,#f09b54,#493b76)}.program-strip span,.program-strip h3,.program-strip p{margin-left:15px;margin-right:15px}.program-strip span{display:block;margin-top:12px;font-size:10px;color:#0785c6;font-weight:900}.program-strip h3{font-size:17px;margin-top:3px;margin-bottom:2px}.program-strip p{font-size:12px;color:var(--muted);margin-top:0;margin-bottom:15px}
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.area-panel,.sim-panel{background:#fff;border:1px solid var(--line);padding:34px}.area-panel h2,.sim-panel h2{font-size:34px;line-height:1.25}.island-map{height:210px;position:relative;margin:10px 0 20px;background:#edf8fb;overflow:hidden}.island-shape{position:absolute;width:120px;height:185px;left:50%;top:12px;transform:translateX(-50%) rotate(10deg);background:linear-gradient(#76caea,#0b87c3);border-radius:58% 42% 62% 38% / 25% 48% 52% 75%;box-shadow:inset -18px -15px 0 rgba(0,82,140,.12)}.map-label{position:absolute;background:#fff;padding:3px 7px;border-radius:12px;font-size:9px;box-shadow:0 3px 10px rgba(0,0,0,.1)}.l1{left:28%;top:48%}.l2{left:62%;top:36%}.l3{left:67%;top:62%}.l4{left:57%;top:78%}.l5{left:27%;top:68%}.area-panel label,.sim-panel label{font-size:12px;font-weight:900}.area-panel select,.sim-panel select{margin:7px 0 12px}.sim-tabs{display:grid;grid-template-columns:1fr 1fr;margin:20px 0}.sim-tabs button{border:1px solid var(--line);background:#fff;padding:10px;cursor:pointer}.sim-tabs button.active{background:#087fbd;color:#fff}.sim-result{background:#eaf6fb;padding:20px;margin:15px 0}.sim-result span{font-size:11px}.sim-result div{font-size:15px}.sim-result b{font-size:36px;color:#087fbd}.sim-panel .btn{width:100%}
.support-search{display:flex;align-items:end;justify-content:space-between;gap:40px}.support-search h2{font-size:36px;margin:5px 0}.fake-search{border:1px solid #b9cdd3;border-radius:28px;padding:5px 5px 5px 20px;color:#84979c;min-width:430px}.fake-search button{float:right;border:0;border-radius:22px;background:#087fbd;color:#fff;padding:9px 28px}.support-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}.support-chips a{border:1px solid var(--line);padding:11px 16px;border-radius:24px;font-size:12px;font-weight:800;background:#fff}.support-chips a:hover{border-color:#0785c6;color:#0785c6}
.closing{min-height:390px;position:relative;color:#fff;display:flex;align-items:center;overflow:hidden}.closing-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,44,58,.74),rgba(2,44,58,.25)),url('https://images.pexels.com/photos/7501178/pexels-photo-7501178.jpeg?auto=compress&cs=tinysrgb&w=1800') center/cover}.closing-inner{position:relative;z-index:2}.closing h2{font-size:52px;margin:6px 0}.closing-actions{display:flex;gap:10px;margin-top:25px}.footer-logo{color:#fff}.footer-phone{font-size:22px;font-weight:900}
@media(max-width:900px){.visual-purpose{grid-template-columns:1fr 1fr}.photo-services,.lifestyle-plans{grid-template-columns:1fr}.photo-services>a{display:grid;grid-template-columns:.9fr 1.1fr}.photo-wrap{height:220px}.tv-grid,.tool-grid{grid-template-columns:1fr}.tv-course-stack{grid-template-columns:1fr 1fr 1fr}.support-search{display:block}.fake-search{min-width:0;margin-top:20px}.important .wrap{grid-template-columns:140px 1fr}.important .wrap>span,.important .wrap>a:last-child{display:none}}
@media(max-width:600px){.v3-hero{height:700px;min-height:0}.hero-content{padding-top:70px}.v3-hero h1{font-size:47px}.hero-service-pills{display:grid;grid-template-columns:1fr;gap:10px;margin:22px 0}.hero-service-pills a{grid-template-columns:36px auto}.hero-service-pills i{width:36px;height:36px}.hero-actions{flex-direction:column;max-width:280px}.important .wrap{grid-template-columns:1fr;gap:3px;padding:12px 0}.section-title-row,.split-heading{display:block}.section-title-row h2,.split-heading h2{font-size:33px}.visual-purpose{grid-template-columns:1fr 1fr;gap:8px}.visual-purpose img{height:105px}.visual-purpose div{padding:17px 12px}.visual-purpose b{font-size:16px}.visual-purpose small{font-size:10px}.purpose-icon{top:85px;width:40px;height:40px}.photo-services>a{display:block}.photo-wrap{height:190px}.tv-copy h2{font-size:37px}.tv-course-stack{grid-template-columns:1fr}.tv-course-stack div{min-height:120px}.program-strip{display:flex}.area-panel,.sim-panel{padding:23px}.closing{min-height:340px}.closing h2{font-size:40px}.closing-actions{flex-direction:column;max-width:270px}}

/* ===== V4: hierarchy cleanup ===== */
.service-teaser{display:grid;grid-template-columns:1fr 1.25fr;gap:70px;align-items:center}.teaser-copy h2{font-size:48px;line-height:1.18}.teaser-copy p{color:var(--muted);font-size:16px;margin-bottom:24px}.teaser-image{height:390px;overflow:hidden}.teaser-image img{width:100%;height:100%;object-fit:cover;transition:.7s}.service-teaser:hover .teaser-image img{transform:scale(1.025)}.tv-teaser{grid-template-columns:1.25fr 1fr}.tv-showcase .teaser-copy p{color:#d6f0f3}.next-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.next-card{padding:42px;background:#fff;border:1px solid var(--line);min-height:280px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;transition:.4s}.next-card.accent{background:#e9f6fa}.next-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(7,59,76,.1)}.next-card h3{font-size:30px;line-height:1.25;margin:8px 0}.next-card p{color:var(--muted);max-width:500px}.next-card b{color:#0785c6;margin-top:10px}.area-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.area-detail-grid h2,.notice-panel h2{font-size:40px}.area-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.area-tags span{padding:9px 15px;background:#edf7fa;border-radius:22px;font-size:13px;font-weight:800}.area-photo{height:370px;overflow:hidden}.area-photo img{width:100%;height:100%;object-fit:cover}.notice-panel{max-width:850px}.notice-panel p{color:var(--muted);line-height:1.9}.usecase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.usecase-grid>div{background:#fff;border:1px solid var(--line);padding-bottom:20px}.usecase-grid img{width:100%;height:220px;object-fit:cover}.usecase-grid h3,.usecase-grid p{margin-left:20px;margin-right:20px}.usecase-grid p{color:var(--muted)}.support-visual{background:#0b647d;color:#fff}.support-visual .wrap{display:grid;grid-template-columns:1fr 1.3fr;align-items:center;min-height:380px}.support-visual h1{font-size:52px}.support-visual img{width:100%;height:380px;object-fit:cover}
@media(max-width:800px){.service-teaser,.tv-teaser,.area-detail-grid,.support-visual .wrap{grid-template-columns:1fr;gap:25px}.teaser-image{height:280px}.tv-teaser .teaser-image{order:2}.next-actions{grid-template-columns:1fr}.next-card{min-height:230px;padding:28px}.usecase-grid{grid-template-columns:1fr}.support-visual .wrap{padding-top:45px}.support-visual h1{font-size:40px}.support-visual img{height:280px}}

/* ===== V5 child-page completion ===== */
.child-hero{height:480px;position:relative;color:#fff;overflow:hidden}.child-hero-img,.child-hero-img:after{position:absolute;inset:0}.child-hero-img:after{content:"";background:linear-gradient(90deg,rgba(2,45,61,.76),rgba(2,45,61,.16))}.child-hero-img img{width:100%;height:100%;object-fit:cover}.child-hero-copy{position:relative;z-index:2;padding-top:125px}.child-hero h1{font-size:58px;line-height:1.12;margin:8px 0 15px}.child-hero p{font-size:17px;font-weight:600}.detail-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.detail-plans>div{border:1px solid var(--line);padding:28px;background:#fff;position:relative}.detail-plans>div.recommended{border:2px solid #0785c6}.detail-plans em{position:absolute;right:12px;top:12px;background:#f45070;color:#fff;font-style:normal;font-size:10px;padding:5px 9px}.detail-plans span{font-size:10px;letter-spacing:.15em;color:#0785c6;font-weight:900}.detail-plans h3{font-size:22px;margin:5px 0}.detail-plans strong{display:block;font-size:48px;color:#086b9e}.detail-plans strong small{font-size:18px}.detail-plans p{color:var(--muted);min-height:55px}.detail-plans b{font-size:18px}.fineprint{font-size:11px;color:var(--muted);margin-top:15px}.info-callout{margin-top:20px;background:#eaf6fa;border-left:4px solid #0785c6;padding:16px 20px;font-size:13px}.two-col-info{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.two-col-info h2{font-size:38px}.two-col-info p{color:var(--muted);line-height:1.8}.image-panel{height:350px;overflow:hidden}.image-panel img{width:100%;height:100%;object-fit:cover}.compare-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px}.compare-mini div{background:#fff;border:1px solid var(--line);padding:25px}.compare-mini b{font-size:20px}.compare-mini p{font-size:13px}.genre-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:25px}.genre-grid div{padding:25px;background:#f3f8f9;font-size:18px;font-weight:900}.genre-grid small{display:block;font-size:11px;font-weight:500;color:var(--muted);margin-top:8px}.featured-program{display:grid;grid-template-columns:1fr 1.25fr;align-items:center;background:#063f55;color:#fff}.featured-program>div{padding:50px}.featured-program h2{font-size:48px;margin:5px 0}.featured-program p{color:#d7edf1}.featured-program img{width:100%;height:390px;object-fit:cover}.broadcast{font-size:16px;margin-top:30px}.broadcast b{font-size:30px}.broadcast small{display:block;color:#c2e2e7}.program-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.program-grid>div{background:#fff;border:1px solid var(--line);padding:28px}.program-grid span{font-size:10px;color:#0785c6;font-weight:900;letter-spacing:.12em}.program-grid h3{font-size:22px}.program-grid p{color:var(--muted)}.price-overview{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price-service{border:1px solid var(--line);padding:35px}.price-service>span{font-size:10px;color:#0785c6;font-weight:900}.price-service h2{font-size:30px}.price-service>p b{font-size:28px}.mini-list{display:grid;gap:7px;margin:22px 0}.mini-list span{padding:10px;background:#f3f8f9}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.check-grid>div{background:#fff;padding:28px}.check-grid b{font-size:19px}.check-grid p{color:var(--muted);font-size:13px}.support-task-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.support-task-grid a{border:1px solid var(--line);padding:28px;transition:.35s}.support-task-grid a:hover{transform:translateY(-4px);border-color:#0785c6}.support-task-grid i{font-style:normal;font-size:25px;color:#0785c6}.support-task-grid h3{font-size:19px}.support-task-grid p{font-size:12px;color:var(--muted)}.faq-layout{display:grid;grid-template-columns:220px 1fr;gap:50px}.faq-layout aside{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.faq-layout aside a{font-size:13px;padding:7px 0}.faq-list details{border-top:1px solid var(--line);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{padding:22px 5px;font-size:16px;font-weight:800;cursor:pointer}.faq-list summary span{display:inline-block;width:120px;color:#0785c6;font-size:11px}.faq-list details p{padding:0 5px 22px 125px;color:var(--muted)}.news-filter{display:flex;gap:8px;margin-bottom:25px;flex-wrap:wrap}.news-filter button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:8px 15px}.news-filter button.active{background:#073b4c;color:#fff}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.contact-card{border:1px solid var(--line);padding:40px}.primary-contact{background:#eaf7fb}.contact-card h2{font-size:28px}.big-phone{display:block;font-size:42px;font-weight:900;color:#073b4c;margin:15px 0}.contact-note{margin-top:18px;padding:25px;background:#f5f7f7}.company-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.company-intro h2{font-size:38px}.company-intro p{color:var(--muted);line-height:1.9}.company-table{max-width:900px}.company-table>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid var(--line);padding:18px 5px}.company-table span{color:var(--muted);font-size:13px}
@media(max-width:800px){.child-hero{height:400px}.child-hero-copy{padding-top:95px}.child-hero h1{font-size:42px}.detail-plans,.genre-grid,.support-task-grid,.check-grid{grid-template-columns:1fr}.two-col-info,.featured-program,.price-overview,.contact-grid,.company-intro{grid-template-columns:1fr}.featured-program img{height:280px}.program-grid{grid-template-columns:1fr}.faq-layout{grid-template-columns:1fr}.faq-layout aside{display:none}.faq-list summary span{display:block;width:auto;margin-bottom:5px}.faq-list details p{padding-left:5px}.big-phone{font-size:32px}.company-table>div{grid-template-columns:1fr;gap:5px}}
