/* Mobile composition from the five 1536 × 1024 design boards.
   LayerLab crops supply illustrations; typography, diagrams and controls stay native. */
html{scroll-padding-top:84px}
body{font-size:16px;line-height:1.55}
.container{width:calc(100% - 40px)}
.site-header{position:sticky;top:0;height:64px;background:#fdfbf8f5;backdrop-filter:blur(12px)}
.header-inner{gap:16px}.brand{width:155px}.menu-toggle{width:44px;height:44px;border:0}
#main-nav{top:64px;padding:12px 20px 20px}.nav-link{min-height:48px}
.breadcrumb{padding-top:19px;font-size:12px;gap:9px}.breadcrumb a{min-height:24px}
.hero{gap:20px;padding:28px 0 30px;min-height:0}
.hero .hero-copy{padding:0}
.hero h1{font-size:34px;line-height:1.23;letter-spacing:-.045em}
.hero p{font-size:16px;line-height:1.65;margin-top:16px}
.hero .eyebrow{font-size:11px;letter-spacing:.08em;gap:10px;margin-bottom:17px}
.hero .eyebrow span{width:62px}
.art{max-width:min(100%,var(--mobile-asset-width,var(--asset-width)))}
.hero .hero-art{width:100%;max-width:min(100%,var(--mobile-asset-width));margin:0;clip-path:none;mask-image:none;mix-blend-mode:multiply}
.btn{min-height:48px;font-size:15px;padding:12px 16px;border-radius:9px;white-space:normal;text-align:center}
.actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:19px;width:100%}
.actions .btn{width:100%;min-height:48px;font-size:15px!important;padding:12px 15px!important}
.home-hero{gap:19px;padding-top:32px;padding-bottom:31px}
.home-hero h1{font-size:clamp(29px,9.7vw,40px);line-height:1.25}
.home-hero h1 br{display:none}.home-hero h1 span{display:inline-block}
.home-hero h1 span:first-child{margin-right:8px}.home-hero h1 span:last-child{display:block}
.home-hero p{font-size:15px;margin-top:17px;line-height:1.65}
.home-hero .hero-art{width:100%;max-width:452px}
.home-hero>.actions{margin-top:0;gap:10px}
.home-philosophy{padding:28px 0 31px;border-top:1px solid #e4ddd2}
.home-philosophy .eyebrow{font-size:11px;margin-bottom:13px;letter-spacing:.09em}
.home-philosophy h2{font-size:25px;line-height:1.4}
.home-philosophy h2 span{display:block}
.values-grid.compact{gap:0;margin-top:22px}
.compact-value{gap:16px;padding:16px 0!important;border-bottom:1px solid #e8dfd1;align-items:center}
.compact-value:last-child{border:0;padding-bottom:0!important}
.compact-value>.art{width:51px;height:53px;max-height:none}
.compact-value h3{font-size:18px;white-space:normal;line-height:1.4}
.compact-value h3 span{font-size:15px;margin-right:9px;color:#bc8d3e}
.compact-value p{font-size:14px;line-height:1.6;margin-top:5px}
.wide-panel{width:calc(100% - 20px);border-radius:18px}
.wide-panel>.container{width:calc(100% - 36px)}
.home-tiki{padding:26px 0}
.tiki-grid{display:grid;grid-template-columns:1fr;gap:22px}
.gold-tag{font-size:13px;padding:5px 13px}
.home-tiki h2{font-size:30px;margin:10px 0 13px}
.home-tiki h3{font-size:20px;line-height:1.55;display:block}
.underlined{text-decoration-thickness:3px;text-underline-offset:5px}
.home-tiki p{font-size:15px;line-height:1.65;margin-top:14px}
.feature-row{gap:7px;justify-content:space-between;margin:20px 0 0}
.feature-row>span{border:1px solid #a6c9dd!important;background:#ffffff85;border-radius:9px;min-height:47px;padding:6px 7px!important;gap:5px;font-size:11px;flex:1;justify-content:center}
.feature-row .icon{width:20px;height:20px}
.lesson-visual{width:calc(100% - 18px);max-width:430px;margin:0 auto;padding-top:16px}
.home-tiki .lesson-visual{margin-bottom:0}
.laptop{padding:7px;border-width:2px;border-radius:12px 12px 3px 3px}
.board-body{height:166px}.screen-top{height:24px;gap:9px;padding-left:34px}.dot{width:8px;height:8px}
.board-tools{width:26px;gap:14px;padding-top:11px}.board-tools .icon{width:16px;height:16px}
.board-content{padding:4px}.lesson-graph{width:51%}.board-copy{padding-top:9px}
.equation{font-size:21px!important;margin-bottom:22px!important;padding-bottom:4px}
.question-bubble{font-size:10px;padding:9px 6px;gap:4px;line-height:1.5}.question-bubble .icon{width:16px;height:16px}
.player-controls{padding:0 8px;min-height:35px;gap:8px;font-size:9px}
.player-controls>a{min-width:32px;min-height:32px;display:grid;place-items:center}
.example-tag{font-size:10px;right:6px;padding:4px 10px}
.laptop-base{height:10px}
.tiki-grid>.btn{width:100%;font-size:15px}
.home-services{padding:32px 0}
.home-services>h2{font-size:25px;line-height:1.4}
.section-caption{font-size:14px;margin:11px 0 20px}
.home-service-grid{grid-template-columns:1fr;gap:0}
.home-service-grid article{display:grid;grid-template-columns:73px minmax(0,1fr);gap:0 14px;align-items:start;border-left:0;border-bottom:1px solid #e2d9cc;padding:17px 0!important}
.home-service-grid article:last-child{border:0}
.home-service-grid .art{grid-column:1;grid-row:1/span 3;width:73px;height:76px;margin:4px 0 0}
.home-service-grid h3{grid-column:2;font-size:17px;line-height:1.4;margin:0}
.home-service-grid h3>a{display:flex;align-items:center;min-height:36px}
.home-service-grid .group-links{grid-column:2;font-size:13px;line-height:1.6;min-height:0;padding:2px 0 7px;border:0}
.group-links a{display:inline-block;min-height:28px;padding-block:3px}
.home-service-grid .group-note{grid-column:2;font-size:12px;line-height:1.6;margin-top:0;color:#5b6570}
.center-link{margin-top:19px;gap:0}.center-link:before,.center-link:after{display:none}
.center-link .btn{width:100%;border:1px solid #c6bda9;background:#fffcf7;font-size:14px;min-height:48px}
.philosophy-hero{gap:25px;padding-bottom:29px}
.philosophy-hero h1{font-size:32px}.philosophy-hero h2{font-size:20px;line-height:1.5;margin-top:14px}
.philosophy-hero p{font-size:15px;line-height:1.75}.philosophy-hero .actions{gap:10px;margin-top:21px}
.philosophy-hero .hero-art{width:100%;max-width:427px}
.philosophy-values{padding:24px 0 30px;border-top:1px solid #e5ddcf}
.philosophy-values>h2{font-size:25px;line-height:1.45}.lined-title:before{width:80px;margin-bottom:14px}
.values-grid.expanded{gap:14px;margin-top:22px}
.value-card{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:10px 12px;border:1px solid #dfd5c6!important;background:#fffdf9;border-radius:13px;padding:17px 15px!important}
.value-card:last-child{padding-bottom:17px!important}
.value-card h3{grid-column:1/-1;justify-content:flex-start;font-size:19px;gap:10px;white-space:normal;line-height:1.4}
.value-card .number{font-size:16px;padding:6px 10px}
.value-card .question-pill{grid-column:1;font-size:12px;line-height:1.5;white-space:normal;margin:3px 0 0;padding:5px 9px;width:fit-content;max-width:100%}
.value-card>.art{grid-column:2;grid-row:2/span 2;width:92px;height:94px;max-height:none;margin:0;align-self:center}
.value-card>p:last-child{grid-column:1;border:0;text-align:left;font-size:14px;line-height:1.6;padding:0;margin:0}
.value-card>p:last-child br{display:none}
.philosophy-flow{padding:27px 0;margin-bottom:25px}
.philosophy-flow h2{font-size:25px;line-height:1.4}
.learning-flow{gap:14px 12px;margin:22px 0}
.learning-flow li{background:#ffffff75;border:1px solid #bdddf1;border-radius:12px;padding:12px 8px 10px;gap:6px}
.learning-flow .art{width:100px;height:78px}
.learning-flow li>span{font-size:13px;min-height:40px;line-height:1.4;padding:7px 4px;white-space:normal}
.flow-closing{font-size:14px;line-height:1.7;text-align:left}
.tiki-hero{gap:24px;padding-bottom:30px}
.tiki-hero h1{font-size:34px;line-height:1.25;margin-top:16px}
.tiki-hero .blue-title{font-size:28px;margin-top:14px;padding-bottom:4px}
.tiki-hero p{font-size:15px;line-height:1.65;margin-top:16px}
.tiki-hero>.actions{margin-top:0;gap:10px}
.tiki-features{border-top:1px solid #e5ddcf;padding:27px 0 31px}
.tiki-features>h2{font-size:25px;line-height:1.45}
.tiki-features-grid{gap:0;margin-top:20px}
.tiki-features-grid article{display:grid;grid-template-columns:85px minmax(0,1fr);gap:5px 15px;border-bottom:1px solid #e2d9cc;padding:18px 0;text-align:left}
.tiki-features-grid article:last-child{border:0;padding-bottom:0}
.tiki-features-grid .art{grid-row:1/span 2;width:85px;height:91px;margin:0;align-self:center}
.tiki-features-grid h3{font-size:18px;line-height:1.5;white-space:normal;align-self:end}
.tiki-features-grid p{font-size:14px;line-height:1.6;margin:0}
.tiki-features-grid p br{display:none}
.tiki-process{width:calc(100% - 20px);padding:26px 0}
.tiki-process>.container{width:calc(100% - 36px)}
.process-heading h2{font-size:25px;line-height:1.4}
.subject-tabs{gap:7px;margin-top:18px}.subject-tab{flex:1;min-width:0;min-height:44px;padding:8px 3px;font-size:14px}
.tiki-steps{gap:13px 12px;margin:22px 0 0}
.tiki-steps>li{padding:15px 9px;border:1px solid #b8d7e9;background:#ffffff85;border-radius:12px}
.tiki-steps .step-number{font-size:12px;left:8px;top:9px;padding:4px 7px}
.tiki-steps .art{width:100px;height:77px;margin:9px auto 8px}
.tiki-steps h3{font-size:16px;line-height:1.4;white-space:normal}
.tiki-steps p{font-size:13px;line-height:1.6;margin-top:7px}.tiki-steps p br{display:none}
.sample-question{font-size:14px;line-height:1.5;margin-top:19px;padding:10px 12px}
.tiki-closing{padding:31px 0 26px;gap:24px}
.tiki-closing>div{width:100%}.tiki-closing h2{font-size:25px;line-height:1.45;white-space:normal}
.tiki-closing .actions{margin-top:22px}.tiki-closing .art{width:100%;max-width:min(100%,438px);margin:0}
.services-hero{padding-top:27px;gap:22px;padding-bottom:10px}
.services-hero h1{font-size:31px;line-height:1.3;white-space:normal}
.services-hero p{font-size:15px;line-height:1.65;white-space:normal;margin-top:16px}
.services-hero .hero-art{width:91%;max-width:371px}
.service-directory{padding:22px 0 20px}
.service-directory h2{font-size:24px;line-height:1.4}
.service-filters{flex-wrap:nowrap;gap:7px;overflow-x:auto;overscroll-behavior-inline:contain;padding:3px 1px 9px;margin-top:17px;scrollbar-width:thin}
.service-filters button{flex-shrink:0;min-height:44px;font-size:13px;padding:10px 13px;border-radius:8px;white-space:nowrap}
.service-groups{width:calc(100% - 20px)}
.service-group{border-radius:15px;margin-bottom:17px;padding-bottom:12px;scroll-margin-top:81px}
.group-heading{gap:13px;padding:17px 14px}
.group-heading>.art{width:61px;height:65px}
.group-heading>div{padding-left:13px;min-width:0}
.group-heading h2{font-size:19px;line-height:1.4}
.group-heading p{font-size:12px;line-height:1.6;margin-top:6px}
.service-card-grid{padding-inline:11px!important;gap:9px}
.service-card{min-height:94px;padding:12px!important;gap:11px!important}
.service-card>.art{width:56px!important;height:59px;flex-shrink:0}
.service-card>div{min-width:0;flex:1}
.service-card h3{font-size:17px!important;line-height:1.4;white-space:normal}
.service-card p{font-size:13px!important;line-height:1.5;margin-top:4px;padding:0}
.service-card>.icon{width:17px!important;height:17px!important;flex-shrink:0}
.access-note{font-size:10px;line-height:1.4;margin-top:5px}
.service-notice{font-size:12px;line-height:1.7;margin-block:21px 26px}
.contact-hero{padding-top:27px;gap:22px;padding-bottom:10px}
.contact-hero h1{font-size:31px;line-height:1.3}
.contact-hero p{font-size:15px;line-height:1.7}
.contact-hero .hero-art{width:100%;max-width:418px}
.page-contact .contact-layout{width:calc(100% - 32px);margin:20px auto 29px}
.page-contact .contact-form{padding:23px 17px;background:#fffefa;border:1px solid #cbd4df;border-radius:17px;box-shadow:0 4px 15px #12325405}
.page-contact .contact-form>h2{font-size:23px;line-height:1.45;white-space:normal;margin-bottom:21px;padding-bottom:17px}
.contact-form fieldset{padding:0;margin-bottom:22px}.contact-form legend{font-size:15px;margin-bottom:11px}
.inquiry-options{gap:9px}.inquiry-chip>span{min-height:46px;font-size:14px;padding:9px 6px;gap:7px}.inquiry-chip .icon{width:18px;height:18px}
.field{margin-top:18px}.field>label{font-size:15px;margin-bottom:8px;line-height:1.5}
.field input{height:48px;font-size:16px;padding:11px 12px}.field textarea{min-height:140px;font-size:16px;padding:12px;line-height:1.6}
.form-info{gap:9px;margin-top:18px;margin-bottom:19px;align-items:flex-start}
.consent-label{font-size:12px;line-height:1.65;gap:8px;min-height:44px;align-items:flex-start}
.consent-label input{width:19px;height:19px;margin-top:2px}
.policy-link{min-width:49px;min-height:44px;font-size:12px;padding:0 3px;align-self:flex-start}
.submit-btn{font-size:16px;min-height:49px}
#form-status{font-size:13px;line-height:1.65;overflow-wrap:anywhere}
.contact-process{width:calc(100% - 20px);padding:26px 0}
.contact-process>.container{width:calc(100% - 36px)}.contact-process h2{font-size:25px;line-height:1.4}
.contact-steps{gap:0;margin:19px 0 0}
.contact-steps li{grid-template-columns:80px minmax(0,1fr);gap:5px 14px;padding:17px 0;border-bottom:1px solid #b9d9e7}
.contact-steps li:last-child{border:0;padding-bottom:0}.contact-steps .art{width:80px;height:80px}
.contact-steps h3{font-size:17px;line-height:1.5;gap:8px}.contact-steps h3>span{font-size:15px}
.contact-steps p{font-size:13px;line-height:1.6;margin-top:0}
.contact-closing{font-size:19px;line-height:1.6;margin:29px 25px}
.compact-contact{padding:23px 0}.contact-only-actions{gap:12px}
.contact-only-actions .btn{min-height:48px;max-width:220px;font-size:14px;padding:12px 10px;border-radius:9px}
.simple-footer{font-size:11px;gap:7px}.site-footer{padding:19px 0}
dialog{padding:23px;max-height:calc(100dvh - 40px);overflow:auto}dialog h2{font-size:23px;line-height:1.4}dialog p{font-size:15px}
@media(min-width:500px){.container{max-width:540px}.wide-panel,.service-groups{max-width:570px}.page-contact .contact-layout{max-width:540px}.hero .hero-art{max-width:var(--mobile-asset-width)}.home-hero .hero-art{width:390px}.home-hero h1{font-size:44px}.contact-hero .hero-art{width:360px}.feature-row>span{font-size:13px}.home-service-grid article{grid-template-columns:92px 1fr}.home-service-grid .art{width:88px;height:83px}.service-filters{justify-content:flex-start}.value-card{grid-template-columns:1fr 120px}.value-card>.art{width:120px;height:105px}}
@media(max-width:359px){.container{width:calc(100% - 32px)}.hero h1{font-size:28px}.home-hero h1{font-size:30px}.home-hero p{font-size:14px}.hero p br{display:none}.feature-row{gap:5px}.feature-row>span{font-size:10px;padding:6px 4px!important}.feature-row .icon{width:17px;height:17px}.board-body{height:147px}.equation{font-size:18px!important}.question-bubble{font-size:9px}.question-bubble .icon{display:none}.value-card{grid-template-columns:minmax(0,1fr) 75px;padding:15px 12px!important;gap:8px}.value-card>.art{width:75px;height:85px}.value-card h3{font-size:17px}.value-card .question-pill{font-size:11px}.value-card>p:last-child{font-size:13px}.tiki-features-grid article{grid-template-columns:70px minmax(0,1fr);gap:4px 11px}.tiki-features-grid .art{width:70px;height:80px}.tiki-features-grid h3{font-size:17px}.service-card{gap:9px!important;padding:10px!important}.service-card>.art{width:46px!important;height:53px}.service-card h3{font-size:16px!important}.service-card p{font-size:12px!important}.group-heading{gap:10px;padding:15px 12px}.group-heading>.art{width:49px}.group-heading h2{font-size:18px}.group-heading>div{padding-left:10px}.page-contact .contact-form{padding:21px 14px}.page-contact .contact-form>h2{font-size:21px}.contact-steps li{grid-template-columns:65px 1fr;gap:4px 10px}.contact-steps .art{width:65px}.contact-steps h3{font-size:16px}.contact-steps p{font-size:12px}}
/* Fade the small paper-tone boundary of the extracted illustrations. */
.hero .hero-art,.tiki-closing .art{mask-image:linear-gradient(to right,transparent,#000 9px,#000 calc(100% - 9px),transparent),linear-gradient(to bottom,transparent,#000 10px,#000 calc(100% - 7px),transparent);mask-composite:intersect}
.service-filters{scrollbar-width:none}.service-filters::-webkit-scrollbar{display:none}
