/* Shared vibrant palette for the visitor-facing pages. */
:root{--ink:#17365c;--green:#0756c9;--cream:#fffdf5;--orange:#c83d2d;--muted:#415b76;--line:#abcde7;--brand-yellow:#ffd21c;--brand-turquoise:#06c755;--brand-blue:#0756c9}
body{background:var(--cream);color:var(--ink)}
.top{background:#0756c9;color:#fff;font-weight:700}
.nav{background:#fffffff5;border-bottom:4px solid #06c755}
.links a:not(.btn):hover{color:#0756c9;text-decoration-color:#ff684e}
.hero{background:radial-gradient(circle at 96% 12%,#ffd21c 0 24px,transparent 25px),radial-gradient(circle at 48% 91%,#06c755 0 12px,transparent 13px)}
.hero h1 em{color:#0756c9;text-decoration-color:#ffd21c}
.hero h1 .hero-local-title,.eyebrow{color:#0756c9}
.hero .hero-photo{border:6px solid #fff;border-radius:28px;box-shadow:9px 9px 0 #ffd21c,-7px -7px 0 #06c755,0 20px 32px #17365c15}
.btn:not(.line-btn):not(.event-register){background:#ffd21c;color:#17365c;border-color:#dfac00;box-shadow:0 4px 0 #d7a400;border-radius:12px}
.btn:not(.line-btn):not(.event-register):hover{background:#ffe064}
.btn.light:not(.line-btn):not(.event-register){background:#0756c9;color:#fff;border-color:#0756c9;box-shadow:0 4px 0 #043c91}
.btn.light:not(.line-btn):not(.event-register):hover{background:#0649ad}
.strip{background:#ffd21c;border:2px solid #edbd09;color:#17365c;border-radius:18px;font-weight:700}
.strip span:before,.strip span:nth-child(2):before,.strip span:nth-child(3):before{color:#a72e22}
.school{background:#a9efc3;border-top:5px solid #06c755;border-bottom:1px solid #06c755}
.schedule{background:#fff;border:2px solid #06c755;box-shadow:0 7px 0 #06c755}
.badge{background:#ffd21c;border-color:#dcb100;color:#17365c}
.big-stat{color:#0756c9}.tab.active{color:#0756c9;border-bottom-color:#ff684e}
.program,.path:first-child{background:#ffe16a;border-top-color:#edb500}
.program:nth-child(2),.path:nth-child(2){background:#a9efc3;border-top-color:#06c755}
.program:nth-child(3){background:#ffc4ad;border-top-color:#f05a3c}
.program .icon,.step b{color:#0756c9}
.support{background:#0756c9;border-bottom:6px solid #ffd21c}
.support h3,.support p{color:#fff}.support .free{color:#ffe16a}
.faq{background:#ffe681;border-top:5px solid #ffd21c}
.faq details{border-color:#c7a643}.faq summary:after{color:#0756c9}
.visit-note{background:#d9fbe5;border:2px solid #06c755}
.step{border-top:4px solid #06c755}.step:nth-child(2){border-top-color:#f05a3c}.step:nth-child(3){border-top-color:#efbd00}.step:nth-child(4){border-top-color:#0756c9}
.halloween-event{background:#fff0d1;border:2px solid #f49b36;border-top:6px solid #f87928}
.event-tag{background:#ffd21c;border-color:#e5b800;color:#543b00}
.event-sessions>div{border-color:#af87d5}.event-register.btn{background:#7133ad;border-color:#7133ad}
.partner-notice,.school-criteria{border-color:#06c755}.school-slot{border-top:5px solid #06c755}.school-slot:nth-child(2){border-top-color:#ff684e}.school-slot:nth-child(3){border-top-color:#ffd21c}
footer{border-top:4px solid #06c755;background:#f0fff4}
@media(max-width:760px){.hero{background:none}.hero .hero-photo{border-width:4px;border-radius:20px;box-shadow:5px 6px 0 #ffd21c,-4px -4px 0 #06c755}.strip{border-radius:14px}}

/* Brighter LINE drawer, with the official unmodified brand icon. */
.line-side-tab{background:#06c755;width:60px;padding:10px;gap:8px;box-shadow:-4px 4px 16px #06c75525;color:#17365c}
.line-tab-logo{display:block;width:40px;height:40px;object-fit:contain;flex-shrink:0}
.line-side-panel{border-color:#06c755;border-top:4px solid #06c755}
.line-side-panel .btn.line-btn{background:#06c755;border-color:#06c755;color:#17365c;box-shadow:0 4px 0 #06c755;font-weight:800}
.line-side-panel .btn.line-btn:hover{background:#06c755}
@media(max-width:760px){.line-side-tab{width:60px;min-height:84px;padding:10px;gap:8px}}
@keyframes card-pop-in{0%{opacity:.25;transform:translateY(30px) scale(.95)}70%{opacity:1;transform:translateY(-4px) scale(1.012)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){[data-scroll-cards] .card-pop-in{animation:card-pop-in 650ms cubic-bezier(.22,.7,.25,1) both;animation-delay:var(--card-delay,0ms)}}

/* A friendly budgie guide to the first lesson. */
.visit-note.friendly-trial{padding:26px;background:#f0fff4;border:2px solid #06c755;border-radius:28px;box-shadow:0 7px 0 #d9fbe5;min-width:0}
.trial-welcome{display:flex;align-items:center;justify-content:center;gap:12px;margin:-6px 0 16px}
.trial-budgie{position:relative;flex:0 0 120px;width:120px;height:120px;overflow:hidden;border-radius:16px;background:#fff;border:0;box-shadow:none}
.trial-budgie img{position:static;display:block;width:100%!important;max-width:100%!important;height:100%;object-fit:contain}
.trial-speech{position:relative;padding:12px 14px;background:white;border:1px solid #d9fbe5;border-radius:18px 18px 18px 3px;line-height:1.5}
.trial-speech span{display:block;color:#0756c9;font-weight:800;font-size:18px}.trial-speech strong{display:block;font-size:12px;margin-top:4px}
.friendly-trial>.eyebrow{text-align:center;margin-bottom:8px}.friendly-trial>h3{text-align:center;margin:0 0 20px;font-size:clamp(19px,2vw,24px);line-height:1.6}
.friendly-trial .trial-steps{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.friendly-trial .trial-steps li{display:flex;gap:12px;align-items:flex-start;margin:0;padding:15px;background:#fff;border:1px solid #d9fbe5;border-radius:16px;line-height:1.6}
.trial-number{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#ffdc53;font-weight:800;font-size:18px;color:#17365c}
.trial-steps li:nth-child(2) .trial-number{background:#a9efc3}.trial-steps li:nth-child(3) .trial-number{background:#ffc2ac}
.trial-steps strong{font-size:14px}.friendly-trial .trial-steps p{font-size:13px;line-height:1.8;margin:4px 0 0;color:#415b76}
.friendly-trial .trial-contact{display:flex;justify-content:center;margin-top:20px;white-space:normal;text-align:center;font-size:14px}
@media(max-width:400px){.visit-note.friendly-trial{padding:20px 15px}.trial-welcome{gap:8px}.trial-speech{padding:10px}.trial-speech span{font-size:16px}.trial-speech strong{font-size:11px}.friendly-trial .trial-steps li{padding:12px;gap:9px}}

/* Cebu partner directory. */
.partner-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;align-items:stretch}
.partner-card{overflow:hidden;border:1px solid #c5dedf;border-top:5px solid #06c755;border-radius:22px;background:#fff;box-shadow:0 7px 0 #d9fbe5;display:flex;flex-direction:column;min-width:0;scroll-margin-top:110px}
.partner-card:nth-child(3n+2){border-top-color:#ffbd22}.partner-card:nth-child(3n){border-top-color:#ff8566}
.partner-card figure{margin:0}.partner-card figure img{width:100%;height:220px;object-fit:cover;display:block;background:#edf4f5}.partner-card#merise figure img{object-position:center 35%}.partner-card#cega figure img{object-fit:contain;background:#f0fff4}
.partner-card figcaption{font-size:10px;line-height:1.7;color:#506779;padding:8px 16px;border-bottom:1px solid #d9fbe5}.partner-card figcaption a{text-decoration:underline;text-underline-offset:3px}
.partner-card-body{padding:23px;display:flex;flex-direction:column;flex:1}.partner-location{font-size:11px;font-weight:700;color:#17365c}.partner-card h3{font-size:21px;line-height:1.4;margin:9px 0 5px;overflow-wrap:anywhere}.partner-card .partner-jp{font-size:11px;color:#506779;margin:0 0 12px}.partner-card .partner-description{font-size:13px;line-height:1.9;margin:0 0 22px;flex:1}.partner-card .partner-website{gap:12px;width:100%;margin-top:auto;font-size:13px}.partner-domain{font-size:10px;text-align:center;color:#506779;overflow-wrap:anywhere;margin-top:12px}
@media(max-width:1000px){.partner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.partner-grid{grid-template-columns:minmax(0,1fr);gap:24px}.partner-card figure img{height:auto;aspect-ratio:16/10}.partner-card-body{padding:22px}.partner-card h3{font-size:22px}}

/* Bright LINE-green controls on every visitor page. */
.btn.line-btn,.line-side-panel .btn.line-btn{background:#06c755;border-color:#06c755;color:#17365c;box-shadow:0 4px 0 #9aebb9;font-weight:800}
.btn.line-btn:hover,.line-side-panel .btn.line-btn:hover{background:#35dc78;border-color:#35dc78;color:#17365c}
.line-side-tab{background:#06c755;color:#17365c;box-shadow:-4px 4px 16px #06c75525}
.line-mark{background:#fff;color:#17365c}
.line-contact{background:#f0fff4;border-color:#a9efc3}
.line-side-panel{border-color:#06c755}
.line-side-heading,.line-side-heading button,.line-side-panel p,.line-side-panel small,.line-contact p{color:#17365c}

/* Opening campaign: a clear, friendly offer beside the trial booking action. */
.opening-offer{display:flex;flex-direction:column;align-items:flex-start;gap:7px;margin:22px 0 18px;padding:20px 22px;background:#f0fff3;border:2px solid #06c755;border-radius:20px;color:#17365c;box-shadow:4px 4px 0 #d8f8df}
.opening-offer-date{display:inline-block;padding:5px 12px;border-radius:100px;background:#ffd21c;font-size:14px;font-weight:800;line-height:1.5}
.opening-offer-title{font-size:clamp(20px,2.1vw,29px);font-weight:900;line-height:1.5;letter-spacing:0}
.opening-offer-english{font-size:12px;font-weight:800;letter-spacing:.06em;line-height:1.6}
.opening-offer-limited{margin-top:5px;font-size:15px;font-weight:800;line-height:1.7}
.opening-offer-small{font-size:12px;line-height:1.5}
@media(max-width:600px){.opening-offer{padding:17px 16px;margin-top:20px;border-radius:17px}.opening-offer-title{font-size:21px}.opening-offer-limited{font-size:14px}.opening-offer-english{font-size:11px;letter-spacing:.02em}}

/* Compact social tabs: tap LINE to slide open; hover gives a small pop. */
.line-side-tab{width:44px;min-height:68px;padding:7px 4px;gap:3px;transition:transform .2s ease,box-shadow .2s ease;transform-origin:right center}
.line-side-tab .line-tab-logo{width:30px;height:30px}
.line-side-tab #line-side-arrow{font-size:20px}
.line-side-tab:active{transform:scale(1.06)}
.instagram-side-tab{position:fixed;right:0;top:calc(52% + 80px);z-index:9;width:44px;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:7px 3px;border-radius:12px 0 0 12px;background:linear-gradient(145deg,#7244c7,#c02a78,#d64e36);color:#fff;text-decoration:none;box-shadow:-3px 3px 12px #67324e22;transition:transform .2s ease;transform-origin:right center}
.instagram-side-tab svg{width:26px;height:26px}.instagram-side-tab span{font-size:10px;font-weight:800;line-height:1.3}
.instagram-side-tab:focus-visible{outline:3px solid #ffd21c;outline-offset:3px}
.instagram-follow{display:flex;align-items:center;gap:26px;background:#fff5fa;border:2px solid #f3cadf;border-radius:26px;padding:32px;margin-top:36px;margin-bottom:30px}
.instagram-follow-icon{flex-shrink:0;width:70px;height:70px;padding:15px;border-radius:20px;background:linear-gradient(145deg,#7244c7,#c02a78,#d64e36);color:white}
.instagram-follow-icon svg{width:100%;height:100%}.instagram-follow-copy{flex:1;min-width:0}.instagram-follow h2{font-size:clamp(23px,2.6vw,32px);margin:8px 0 10px}.instagram-follow p{font-size:14px;line-height:1.9;margin:0 0 8px}.instagram-handle{font-size:13px;font-weight:800;color:#993064}
.instagram-follow .instagram-follow-button{background:#a62970;color:#fff;border-color:#a62970;box-shadow:0 4px 0 #7e2056;font-size:14px;white-space:nowrap}
@media(hover:hover) and (pointer:fine){.line-side-tab:hover,.instagram-side-tab:hover{transform:scale(1.12);box-shadow:-5px 5px 18px #17365c30}}
@media(max-width:760px){.line-side-tab{width:44px;min-height:68px;padding:7px 4px;gap:3px}.instagram-side-tab{top:auto;bottom:calc(36px + env(safe-area-inset-bottom,0px))}.instagram-follow{flex-wrap:wrap;gap:16px;padding:24px;margin-left:20px;margin-right:20px;width:auto}.instagram-follow-icon{width:54px;height:54px;padding:11px}.instagram-follow-copy{flex-basis:calc(100% - 75px)}.instagram-follow .instagram-follow-button{width:100%;white-space:normal}}
@media(prefers-reduced-motion:reduce){.line-side-tab,.instagram-side-tab{transition:none}.line-side-tab:hover,.line-side-tab:active,.instagram-side-tab:hover{transform:none}}

/* Tap-to-discover school benefits. Native disclosures support touch and keyboard. */
.wrap.strip{display:block;background:transparent;border:0;padding:20px 0 8px;box-shadow:none}
.strip span:before{content:none!important;display:none!important}
.benefit-intro{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 4px 15px;color:#17365c}.benefit-intro strong{font-size:18px}.benefit-intro small{font-size:12px;font-weight:500}
.benefit-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}
.benefit-card{--card-color:#ffd21c;--card-soft:#fffbea;border:2px solid var(--card-color);border-radius:22px;background:var(--card-soft);overflow:hidden;box-shadow:0 5px 0 var(--card-color);transition:transform .2s ease,box-shadow .2s ease;text-align:left}
.benefit-card-2{--card-color:#06c755;--card-soft:#effff3}.benefit-card-3{--card-color:#79bfff;--card-soft:#eef7ff}
.benefit-card summary{display:flex;flex-direction:column;align-items:flex-start;position:relative;cursor:pointer;list-style:none;padding:22px;min-height:218px;color:#17365c;gap:9px}
.benefit-card summary::-webkit-details-marker{display:none}.benefit-card summary::marker{content:''}.benefit-card summary:focus-visible{outline:3px solid #0756c9;outline-offset:-5px;border-radius:20px}
.benefit-icon{display:grid;place-items:center;width:46px;height:46px;background:#fff;border-radius:15px;font-size:27px;transition:transform .25s ease}.benefit-label{position:absolute;top:30px;left:80px;font-size:12px;letter-spacing:.12em;color:#17365c}.benefit-card summary strong{font-size:17px;line-height:1.7;margin-top:4px}.benefit-prompt{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:auto;padding-top:5px;font-size:12px}.benefit-plus{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--card-color);font-size:23px;line-height:1;transition:transform .2s ease}.benefit-less{display:none}.benefit-card[open] .benefit-more{display:none}.benefit-card[open] .benefit-less{display:inline}.benefit-card[open] .benefit-plus{transform:rotate(45deg)}.benefit-card[open] .benefit-icon{transform:rotate(-8deg) scale(1.08)}
.benefit-reveal{padding:0 22px 24px;animation:benefit-reveal .25s ease}.benefit-reveal h3{font-size:16px;line-height:1.7;margin:0 0 8px}.benefit-reveal p{font-size:14px;line-height:1.9;margin:0 0 15px;font-weight:400}.benefit-reveal a{display:inline-block;color:#17365c;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px;padding:8px 0}
@keyframes benefit-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover){.benefit-card:hover{transform:translateY(-5px);box-shadow:0 9px 0 var(--card-color)}.benefit-card:hover .benefit-icon{transform:rotate(-8deg)}}
@media(max-width:760px){.benefit-cards{grid-template-columns:1fr;gap:17px}.benefit-intro{flex-direction:column;align-items:flex-start;gap:4px}.benefit-card summary{min-height:0;padding:18px 20px 14px}.benefit-icon{width:38px;height:38px;font-size:23px}.benefit-label{top:28px;left:72px}.benefit-card summary strong{font-size:16px}.benefit-prompt{padding-top:0}.benefit-reveal{padding:2px 20px 20px}}
@media(prefers-reduced-motion:reduce){.benefit-card,.benefit-icon,.benefit-plus{transition:none}.benefit-reveal{animation:none}.benefit-card:hover{transform:none}}

.benefit-card{padding:0}.benefit-card summary:after,.benefit-card[open] summary:after{content:none;display:none}.benefit-reveal p{padding-right:0;color:#17365c}

/* A clear three-step path to a first trial lesson. */
#trial-lesson-steps{scroll-margin-top:100px}.friendly-trial .trial-intro{text-align:center;font-size:13px;line-height:1.8;margin:-8px 0 22px;color:#415b76}
.trial-step-label{display:block;font-size:10px;font-weight:800;letter-spacing:.06em;color:#0756c9;margin-bottom:5px}.trial-steps strong{display:block;font-size:16px;line-height:1.6}
.friendly-trial .trial-steps{gap:22px}.friendly-trial .trial-steps li{position:relative;padding:18px 15px}.friendly-trial .trial-steps li:not(:last-child):after{content:'↓';position:absolute;left:25px;bottom:-25px;color:#17365c;font-size:18px;font-weight:800;line-height:22px}
.trial-step-link{display:inline-block;padding:8px 0 2px;font-size:12px;font-weight:800;color:#0756c9;text-decoration:underline;text-underline-offset:3px}
.friendly-trial .trial-capacity-note{font-size:12px;line-height:1.8;text-align:center;background:#fff4bb;border-radius:12px;padding:10px 12px;margin:22px 0 0;color:#17365c}

/* Standalone frequently asked questions. */
.faq-breadcrumb{padding-top:30px;font-size:12px;color:#415b76}.faq-breadcrumb a{text-decoration:underline}#faq-page .faq{padding-top:38px}#faq-page h1{font-size:clamp(30px,4vw,46px);line-height:1.45;margin:10px 0 18px}#faq-page .faq-layout{align-items:start}.faq-contact{background:#effff3;border:2px solid #06c755;border-radius:24px;padding:28px;margin-bottom:60px}.faq-contact h2{font-size:22px;line-height:1.6;margin:0 0 8px}.faq-contact p{font-size:14px}.faq-contact .actions{flex-wrap:wrap}

.local-overview{padding-top:28px;padding-bottom:20px}.local-overview h2{font-size:clamp(22px,3vw,30px);line-height:1.6}.local-overview p{max-width:900px;font-size:14px;line-height:2}.local-overview a{text-decoration:underline;text-underline-offset:4px;color:#0756c9}.footer-pages{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:24px;padding-bottom:24px;border-bottom:1px solid #d9e6dd}.footer-pages a{font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:5px 0}

/* Big, playful Speak / Enjoy / Grow headlines. */
.benefit-card summary{padding:24px 20px 18px;min-height:246px;gap:16px}
.benefit-headline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;width:100%;padding:6px 0 10px}
.benefit-headline .benefit-icon{width:52px;height:52px;font-size:32px;flex-shrink:0;border:2px solid #17365c;border-radius:18px;box-shadow:3px 3px 0 var(--card-color);transform:rotate(-7deg)}
.benefit-headline .benefit-label{position:static;display:block;font-family:ui-rounded,'Arial Rounded MT Bold','Trebuchet MS',sans-serif;font-size:clamp(32px,3.5vw,46px);font-weight:950;line-height:1.12;letter-spacing:-.045em;color:#0756c9;text-shadow:2px 2px 0 #fff,4px 4px 0 #ffd21c;transform:rotate(-3deg);overflow-wrap:normal;white-space:nowrap}
.benefit-card-2 .benefit-label{color:#823cb4;text-shadow:2px 2px 0 #fff,4px 4px 0 #b6f5c7;transform:rotate(3deg)}
.benefit-card-3 .benefit-label{color:#17365c;text-shadow:2px 2px 0 #fff,4px 4px 0 #79bfff;transform:rotate(-3deg)}
.benefit-card summary strong{font-size:18px;line-height:1.75;margin:0}.benefit-prompt{font-size:13px}.benefit-plus{width:32px;height:32px}
@keyframes benefit-cheer{0%{translate:0 0;scale:1}45%{translate:0 -6px;scale:1.05}75%{translate:0 2px;scale:.99}100%{translate:0 0;scale:1}}
@media(prefers-reduced-motion:no-preference){.benefit-card[open] .benefit-label{animation:benefit-cheer .45s ease both}}
@media(max-width:760px){.benefit-card summary{min-height:0;padding:22px 20px 17px;gap:14px}.benefit-headline{gap:15px;padding:4px 0 8px}.benefit-headline .benefit-label{font-size:clamp(34px,10vw,46px)}.benefit-headline .benefit-icon{width:48px;height:48px;font-size:29px}.benefit-card summary strong{font-size:17px}}

/* Softer rounded lettering, sized down for a calmer balance. */
@font-face{font-family:'Nunito';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/nunito-800.ttf') format('truetype')}
.benefit-headline .benefit-label{font-family:'Nunito',ui-rounded,'Arial Rounded MT Bold',sans-serif;font-size:clamp(27px,2.6vw,34px);font-weight:800;letter-spacing:.005em;line-height:1.2;text-shadow:1px 1px 0 #fff,2px 2px 0 #ffd21c;transform:rotate(-2deg)}
.benefit-card-2 .benefit-label{text-shadow:1px 1px 0 #fff,2px 2px 0 #b6f5c7;transform:rotate(2deg)}
.benefit-card-3 .benefit-label{text-shadow:1px 1px 0 #fff,2px 2px 0 #79bfff}
.benefit-headline .benefit-icon{width:44px;height:44px;font-size:27px}.benefit-card summary{min-height:226px;gap:13px}.benefit-headline{gap:12px;padding:4px 0 7px}
@media(max-width:760px){.benefit-headline .benefit-label{font-size:32px}.benefit-headline .benefit-icon{width:44px;height:44px;font-size:27px}.benefit-card summary{min-height:0}}

/* Approved Start-up English logo palette: solid turquoise, butter yellow, white and blush accents. */
:root{--ink:#07396a;--green:#004b87;--cream:#73ced4;--orange:#004b87;--muted:#36506d;--line:#58b9c2;--brand-yellow:#f5df91;--brand-turquoise:#00bccb;--brand-blue:#004b87;--brand-pink:#f7c9d8}
body{background:#73ced4;color:#07396a}.top{background:#004b87;color:#fff}.nav{background:#73ced4;border-bottom:2px solid #58b9c2;backdrop-filter:none}
.hero,.school-art{background:#73ced4}.hero h1 em,.hero h1 .hero-local-title,.eyebrow,.big-stat,.trial-step-label,.trial-step-link{color:#004b87}.hero h1 em{text-decoration-color:#f5df91}
.hero .hero-photo{border:4px solid #fff;border-radius:28px;box-shadow:0 7px 0 #58b9c2;width:100%;height:auto;object-fit:contain;background:#00bccb}
.btn:not(.line-btn):not(.event-register){background:#f5df91;border-color:#f5df91;color:#07396a;box-shadow:0 4px 0 #58b9c2;border-radius:24px}
.btn:not(.line-btn):not(.event-register):hover{background:#f8e8b2}
.btn.light:not(.line-btn):not(.event-register),.hero .actions .btn:first-child,.friendly-trial .btn.trial-contact{background:#004b87;border-color:#004b87;color:#fff;box-shadow:0 4px 0 #58b9c2}
.btn.light:not(.line-btn):not(.event-register):hover,.hero .actions .btn:first-child:hover{background:#07396a}
.opening-offer{background:#f5df91;border-color:#f5df91;box-shadow:0 5px 0 #58b9c2;color:#07396a}.opening-offer-date{background:#fff;color:#07396a}
.benefit-card{--card-color:#f5df91;--card-soft:#f5df91;box-shadow:0 6px 0 #58b9c2;border:0;border-radius:24px}
.benefit-card-2{--card-color:#fff;--card-soft:#fff}.benefit-card-3{--card-color:#f7c9d8;--card-soft:#f7c9d8}
.benefit-headline .benefit-label,.benefit-card-2 .benefit-label,.benefit-card-3 .benefit-label{color:#07396a;text-shadow:none}
.benefit-card summary,.benefit-reveal p,.benefit-reveal a{color:#07396a}.benefit-headline .benefit-icon{background:#fff;border:0;box-shadow:none}.benefit-plus{background:#fff;color:#07396a}.benefit-card-3 .benefit-plus{background:#f5df91}
.benefit-card:hover{box-shadow:0 9px 0 #58b9c2}
.school{background:#73ced4;border-top:0;border-bottom:0;color:#07396a}.school .sub{color:#07396a}.schedule{background:#fff;border:0;box-shadow:0 7px 0 #004b87}.badge{background:#f5df91;border-color:#f5df91;color:#07396a}.tab.active{color:#004b87;border-bottom-color:#f5df91}
.visit-note.friendly-trial,.faq-contact{background:#fff;border-color:#fff;box-shadow:0 6px 0 #58b9c2}.trial-speech{background:#f5df91;border-color:#f5df91}.trial-speech span{color:#004b87}.friendly-trial .trial-steps li{background:#f1f8fa;border-color:#f1f8fa}.trial-number,.trial-steps li:nth-child(2) .trial-number,.trial-steps li:nth-child(3) .trial-number{background:#f5df91;color:#07396a}.friendly-trial .trial-capacity-note{background:#f5df91;color:#07396a}
.faq{background:#73ced4;border-top:0}.faq details{background:#fff;border:0;border-radius:18px;margin-bottom:12px;padding:20px}.faq summary:after{color:#004b87}
.support{background:#004b87;border-color:#f5df91}.support h3,.support p{color:#fff}.support .free{color:#f5df91}
.path:first-child{background:#f5df91;border-color:#f5df91}.path:nth-child(2){background:#00bccb;border-color:#00bccb}.step{background:#fff;border-top-color:#00bccb}.step:nth-child(2){border-top-color:#f5df91}.step:nth-child(3){border-top-color:#004b87}.step:nth-child(4){border-top-color:#00bccb}
.partner-notice,.school-criteria{background:#fff;border-color:#fff}.school-slot,.partner-card{background:#fff;border-top-color:#00bccb;box-shadow:0 6px 0 #58b9c2}.partner-card:nth-child(3n+2),.school-slot:nth-child(2){border-top-color:#f5df91}.partner-card:nth-child(3n),.school-slot:nth-child(3){border-top-color:#004b87}.school-photo-placeholder,.school-slot:nth-child(2) .school-photo-placeholder,.school-slot:nth-child(3) .school-photo-placeholder{background:#00bccb}
.halloween-event{background:#fff;border-color:#f5df91;border-top-color:#f5df91}.event-tag{background:#f5df91;border-color:#f5df91;color:#07396a}.event-sessions>div{background:#f7c9d8;border-color:#f7c9d8}.event-register.btn{background:#004b87;border-color:#004b87;color:#fff}
.instagram-follow{background:#fff;border-color:#fff;box-shadow:0 6px 0 #58b9c2}.instagram-side-tab,.instagram-follow-icon{background:#004b87;color:#fff}.instagram-handle{color:#004b87}.instagram-follow .instagram-follow-button{background:#004b87!important;border-color:#004b87!important;color:#fff!important;box-shadow:0 4px 0 #58b9c2!important}
footer{background:#73ced4;border-top:3px solid #004b87}.footer-pages{border-color:#58b9c2}.line-contact{background:#fff}.line-side-panel{background:#fff}
@media(max-width:760px){.hero{background:#73ced4}.hero .hero-photo{border:4px solid #fff;box-shadow:0 5px 0 #58b9c2;border-radius:22px}}

/* White breathing space and a clear, cheerful mobile headline. */
.nav{background:#fff;border-bottom:0}.hero{padding-top:38px;padding-bottom:28px}.hero-location{display:inline-block;background:#fff;color:#07396a;border-radius:999px;padding:7px 14px;font-size:12px;line-height:1.7;font-weight:800;margin-bottom:22px}
.hero h1.hero-headline{font-family:'Hiragino Maru Gothic ProN','Noto Sans JP',Meiryo,sans-serif;font-size:clamp(30px,3.7vw,49px);line-height:1.45;letter-spacing:-.025em;margin:0 0 22px;color:#07396a}
.hero-joy{display:table;background:#f5df91;padding:3px 10px 6px;border-radius:16px;box-shadow:0 5px 0 #fff;transform:rotate(-1deg);margin:0 0 17px;max-width:100%}
.hero-bridge{display:block;font-size:.66em;font-weight:700;letter-spacing:0;margin:0 0 3px}
.hero h1 em.hero-confidence{display:inline-block;font-style:normal;color:#07396a;background:#fff;border-radius:12px;padding:0 9px 3px;text-decoration:none;border:0;box-shadow:none}
.hero .hero-description{font-size:15px;line-height:1.9;color:#173f59;margin:0 0 22px}
.hero .opening-offer{background:#fff;border:0;border-top:5px solid #f5df91;box-shadow:0 6px 0 #58b9c2;padding:20px 22px;gap:10px;margin-top:20px}
.hero .opening-offer-date{background:#f5df91;font-size:13px;padding:5px 12px}
.hero .opening-offer-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;font-size:22px;line-height:1.5;color:#07396a}.offer-zero{font-size:1.4em;color:#004b87;padding-left:2px}.offer-trial{border-bottom:3px solid #f5df91}
.hero .opening-offer-english{font-size:10px;letter-spacing:.035em;color:#36506d}.hero .opening-offer-limited{font-size:13px;margin-top:0}.hero .opening-offer-small{font-size:10px;color:#36506d}
.hero .actions{gap:10px}.hero .actions .btn.light{background:#fff;border:2px solid #004b87;color:#004b87;box-shadow:none}.hero .hero-note{font-size:11px;color:#173f59}
@media(max-width:760px){.hero{padding-top:26px;gap:28px}.hero-location{font-size:11px;padding:6px 12px;margin-bottom:20px}.hero h1.hero-headline{font-size:clamp(26px,7.5vw,36px);margin-bottom:18px}.hero-joy{padding:3px 7px 5px;margin-bottom:16px}.hero .hero-description{font-size:14px;line-height:1.85}.hero .opening-offer{padding:17px 18px;gap:8px}.hero .opening-offer-title{font-size:20px;gap:5px 12px}.hero .actions{display:grid;grid-template-columns:1fr}.hero .actions .btn{justify-content:center;text-align:center;font-size:14px;padding:13px 16px}.hero .opening-offer-limited{font-size:12px}}

/* Open homepage layout: typography and broad colour fields instead of nested cards. */
#home .hero-location{background:none;border:0;border-radius:0;padding:0;margin-bottom:20px;color:#07396a}
#home .hero h1.hero-headline{font-size:clamp(34px,4.2vw,56px);font-weight:900;line-height:1.4}
#home .hero-joy{display:block;background:none;border-radius:0;padding:0;box-shadow:none;transform:none;margin-bottom:12px;color:#07396a}
#home .hero-bridge{font-size:.62em;margin-bottom:6px}
#home .hero h1 em.hero-confidence{background:none;border-radius:0;padding:0;color:#fff;text-shadow:0 2px 0 #004b87;font-weight:900}
#home .hero .opening-offer{background:none;border:0;border-top:1px solid #399ca8;border-radius:0;box-shadow:none;padding:20px 0 0;margin-top:22px;gap:7px}
#home .hero .opening-offer-date{background:none;border-radius:0;padding:0;font-size:14px;color:#07396a}
#home .offer-zero{color:#07396a}#home .offer-trial{border-bottom:0}
#home .hero .hero-photo{border:0;box-shadow:none;border-radius:0}
#home .benefit-card{background:none;border:0;border-top:2px solid #fff;border-radius:0;box-shadow:none}
#home .benefit-card:hover{box-shadow:none;transform:none}
#home .benefit-card summary{padding:22px 0 16px}
#home .benefit-reveal{padding:0 0 22px}
#home .benefit-headline .benefit-icon{background:none;border-radius:0}
#home .school{background:#fff;margin-top:36px}
#home .schedule{background:none;border:0;border-radius:0;box-shadow:none;padding:0}
#home .badge{background:none;border:0;border-radius:0;padding-left:0;padding-right:12px;font-weight:800}
#home .visit-note.friendly-trial{background:none;border:0;border-radius:0;box-shadow:none;padding:0}
#home .trial-speech{background:none;border:0;border-radius:0;padding-left:0}
#home .friendly-trial .trial-steps li{background:none;border:0;border-bottom:1px solid #399ca8;border-radius:0;padding:14px 0 20px}
#home .friendly-trial .trial-steps li:not(:last-child):after{content:none}
#home .friendly-trial .trial-capacity-note{background:none;border-radius:0;padding:0;font-weight:800}
#home .halloween-event{background:none;border:0;border-radius:0;padding:0;box-shadow:none}
#home .event-sessions>div{background:none;border:0;border-left:2px solid #fff;border-radius:0}
#home .event-tag{background:none;border:0;border-radius:0;padding-left:0;font-weight:800}
#home .instagram-follow{background:none;border:0;border-top:2px solid #fff;border-bottom:2px solid #fff;border-radius:0;box-shadow:none;padding:32px 0}
#home .line-contact{background:none;border:0;border-radius:0;padding:0}
@media(max-width:760px){
 #home .hero h1.hero-headline{font-size:clamp(29px,8.1vw,40px);letter-spacing:-.04em}
 #home .hero-location{font-size:11px}
 #home .hero .opening-offer{padding:18px 0 0}
 #home .benefit-cards{gap:12px}
 #home .benefit-card summary{padding:20px 0 14px}
 #home .school .schedule{margin-top:28px}
 #home .visit-note.friendly-trial{margin-top:40px}
 #home .instagram-follow{width:calc(100% - 36px);margin-left:auto;margin-right:auto;padding:28px 0}
}

/* White lettering on turquoise: bold, open headlines without background panels. */
#home .hero h1.hero-headline,
#home .hero .hero-joy,
#home .hero .hero-bridge,
#home .hero h1 em.hero-confidence{color:#fff;background:none;border:0;border-radius:0;box-shadow:none;font-weight:900;text-shadow:0 2px 1px #07396a80}
#home .hero .hero-bridge{font-weight:800}
#home .hero .opening-offer-title,
#home .hero .offer-zero,
#home .benefit-headline .benefit-label,
#home #events h2,
#home #access h2,
#home .friendly-trial>h3,
#home .instagram-follow h2,
#home .contact h2,
#home .minor-cebu h3{color:#fff;font-weight:800;text-shadow:0 2px 1px #07396a80}
#home .hero .opening-offer-title .offer-zero{color:#fff}

/* Clear white focal points on the turquoise sections. */
#home .local-overview h2,
#home .benefit-intro strong,
#home .benefit-card summary strong,
#home .event-copy h3,
#home .event-copy .event-date,
#home .cebu-icons-header h3{
 color:#fff;font-weight:800;
 text-shadow:0 1px 2px #07396acc,0 2px 1px #07396a80;
}
#home .hero .hero-description,
#home .hero .hero-note,
#home .hero .opening-offer-english,
#home .hero .opening-offer-small,
#home .event-copy .event-description,
#home .event-copy .event-note,
#home .event-copy .event-form-note,
#home .contact p{color:#07396a}
/* Navy outline keeps white lettering distinct against the light blue field. */
#home .hero h1.hero-headline,
#home .hero .hero-joy,
#home .hero .hero-bridge,
#home .hero h1 em.hero-confidence,
#home .hero .opening-offer-title,
#home .benefit-headline .benefit-label,
#home #events h2,
#home #access h2,
#home .friendly-trial>h3,
#home .instagram-follow h2,
#home .contact h2,
#home .minor-cebu h3{
 text-shadow:0 1px 2px #07396acc,0 2px 1px #07396a80;
}
