:root{--texture:url("/assets/framerusercontent.com/images/WZVndORdFuDqiUdmZreUx4pAO5o--65a3beee3be2.png");--cloud:url("/assets/framerusercontent.com/images/hABBkPgD3IdHjUVQRqqJyKuik--9c8b14ca57eb.png");--tear:url("/assets/framerusercontent.com/images/RDXQEQxLrrzBThEohMHofeOrtAE--dd9543a680d1.png")}
*{box-sizing:border-box} :root{--ink:#2B2C30;--paper:#E9ECF1;--accent:#55D5FC}html{scroll-snap-type:y mandatory;scrollbar-width:none}html::-webkit-scrollbar{display:none}body{margin:0;background:var(--ink);font-family:"Shippori Mincho",serif;font-weight:700;color:var(--ink)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}header{position:fixed;top:0;left:0;width:100%;height:52px;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;z-index:20;background:var(--ink);color:var(--paper)}header>span{font-size:23px;letter-spacing:.15em}header small{font-size:10px;letter-spacing:.08em}header button,#menu-close{background:none;border:0;color:inherit;font-family:Anton,sans-serif;font-size:17px}.swipe-section{height:100dvh;min-height:100dvh;max-height:100dvh;scroll-snap-align:start;scroll-snap-stop:always;position:relative;padding:72px 25px 42px;display:flex;flex-direction:column;overflow:clip}.paper{background:var(--paper)}.dark{background:var(--ink);color:var(--paper)}.swipe-section::before{content:"";position:absolute;inset:0;background-image:var(--texture);background-size:cover;opacity:.13;pointer-events:none}.swipe-section::after{content:"";position:absolute;bottom:0;left:-4%;width:108%;height:20px;background-image:var(--tear);background-size:100% 100%;pointer-events:none}.eyebrow{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.1em;position:relative;z-index:1}.serial{font-family:Anton;font-size:16px}.content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;justify-content:center;gap:20px;min-height:0}h1,h2{font-size:clamp(25px,7.2vw,35px);line-height:1.48;letter-spacing:-.035em;margin:0;font-weight:800}em{font-style:normal}p{font-size:16px;line-height:1.95;margin:0}p.small{font-size:14px;line-height:1.9}.closing{font-size:17px;font-weight:800}.foot{display:flex;justify-content:space-between;position:relative;font-size:10px;letter-spacing:.12em}.foot>span:first-child{font-family:Anton;font-size:14px}.hero h1{font-size:clamp(32px,9.5vw,46px);line-height:1.38}.hero .content{gap:17px}.hero h1 em{border-bottom:2px solid var(--paper)}.hero:before{background-image:var(--cloud),var(--texture);background-size:100% auto,cover;background-position:130px 80px,center;background-repeat:no-repeat;opacity:.18}.quotes p{font-size:18px;line-height:1.95;font-weight:800}.quotes p:nth-child(2){padding-left:12px}.quotes p:nth-child(3){padding-left:25px}.slips{display:flex;gap:20px;justify-content:center;padding:10px 0}.slips p{writing-mode:vertical-rl;border:3px double currentColor;padding:12px 8px;font-size:19px;line-height:1.3;transform:rotate(-5deg)}.slips p:nth-child(2){transform:rotate(5deg);margin-top:12px}.horizontal p{writing-mode:horizontal-tb;font-size:16px}.statement{padding:16px 0 16px 55px;background:var(--cloud) no-repeat right center;background-size:85%;font-size:38px;line-height:1.6}.vertical-layout{display:flex;gap:24px;align-items:center}.vertical-title{writing-mode:vertical-rl;font-size:28px;line-height:1.65;white-space:nowrap}.vertical-layout p{font-size:15px}.vertical-layout p+p{margin-top:20px}.work-list,.boxed{list-style:none;padding:0;margin:0}.work-list li{border-top:1px solid currentColor;padding:10px 0;font-size:25px}.work-list li:last-child{border-bottom:1px solid currentColor}.boxed{display:grid;gap:10px}.boxed li{border:1px solid currentColor;padding:12px 9px;font-size:14px}.rule-copy{border-top:1px solid currentColor;border-bottom:1px solid currentColor;padding:14px 0}.rule-copy p+p{margin-top:12px}.pay{display:flex;gap:18px;align-items:start}.pay>span{padding-top:10px}.pay strong{font-family:Anton;font-weight:400;font-size:clamp(48px,14vw,66px);line-height:1.15}.pay strong span{font:700 17px "Shippori Mincho"}.hours{font:400 clamp(43px,12.7vw,60px)/1.2 Anton;white-space:nowrap}.hours span{font:700 24px serif;padding:0 8px}dl{margin:0}dl>div{display:grid;grid-template-columns:75px 1fr;gap:12px;border-bottom:1px solid;padding:12px 0;font-size:14px;line-height:1.8}dt,dd{margin:0}.note{font-size:12px;line-height:1.75}.company-word{font-size:100px;line-height:1.2;font-weight:800;letter-spacing:.18em;align-self:center}.progress{position:fixed;bottom:12px;right:16px;font:12px Anton;mix-blend-mode:difference;color:#fff;z-index:15}.is-long-section{height:auto;max-height:none;min-height:100dvh;overflow:visible;scroll-snap-stop:normal}.entry .content{gap:28px;padding:30px 0}.entry form{display:grid;gap:25px}label{display:block;font-size:15px}label span{background:var(--ink);color:var(--paper);font-size:10px;padding:3px 7px;margin-left:8px}label small{font-size:11px;margin-left:8px}input,select,textarea{display:block;width:100%;margin-top:9px;border:1px solid #777;border-radius:0;background:transparent;color:var(--ink);padding:12px;font-size:16px;min-height:48px}textarea{resize:vertical}.cta{border:1px solid;background:var(--ink);color:var(--paper);padding:17px 20px;text-align:left;border-radius:0}.cta span{float:right}.cta:disabled{cursor:not-allowed;opacity:.65}.phone{text-align:center;font-size:13px}.phone a{display:block;font-family:Anton;font-size:30px;text-decoration:none;margin-top:8px}footer{text-align:center;padding:20px 0;font-size:20px}dialog{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;background:var(--ink);color:var(--paper);border:0;padding:20px 25px;z-index:30}dialog::backdrop{background:var(--ink)}#menu-close{display:block;margin-left:auto}dialog nav{display:grid;margin-top:18px}dialog nav button{border:0;border-bottom:1px solid #666;background:none;color:inherit;text-align:left;padding:12px 0;font-size:18px}dialog nav span{float:right}.entry:focus-within{scroll-margin-bottom:0}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(max-height:700px){.swipe-section{padding:64px 22px 34px}.content{gap:14px}h1,h2{font-size:27px;line-height:1.4}p{font-size:14px;line-height:1.8}.closing{font-size:15px}p.small{font-size:13px}.hero h1{font-size:34px}.hero .content{gap:12px}.quotes p{font-size:16px}.slips{padding:0;gap:16px}.slips p{font-size:17px;padding:8px 6px}.statement{font-size:30px;padding:8px 0 8px 45px}.vertical-title{font-size:25px}.vertical-layout p{font-size:13px}.vertical-layout p+p{margin-top:12px}.work-list li{padding:7px 0;font-size:21px}dl>div{padding:9px 0;font-size:13px}.boxed li{padding:9px;font-size:13px}.rule-copy{padding:10px 0}.company-word{font-size:76px}.entry{padding-top:64px}.entry .content{padding-top:20px}.foot{font-size:9px}}@media(prefers-reduced-motion:no-preference){.content{animation:appear .5s ease-out}@keyframes appear{from{opacity:.5;transform:translateY(10px)}to{opacity:1;transform:none}}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-status{font-size:13px}html:has(dialog[open]){overflow:hidden}
@media(max-height:640px){
 .content{gap:10px}h1,h2{font-size:24px;line-height:1.4}
 .philosophy .slips{flex-direction:column;gap:8px;align-items:flex-start;padding:4px 0}
 .philosophy .slips p{writing-mode:horizontal-tb;font-size:16px;padding:5px 12px;transform:rotate(-2deg)}
 .philosophy .slips p:nth-child(2){margin:0 0 0 20px;transform:rotate(2deg)}
 .statement{font-size:26px;line-height:1.3;padding:4px 0 4px 40px}
 .rule-copy{padding:8px 0}.rule-copy p+p{margin-top:8px}
 .boxed{gap:8px}.boxed li{padding:8px}
}
@media(max-height:640px){.swipe-section:nth-child(5) .content{gap:8px}.work-list li{padding:5px 0}}
@media(min-height:641px) and (max-height:800px){.content{gap:16px}h1,h2{font-size:30px}.hero h1{font-size:42px}.philosophy .slips{flex-direction:column;gap:10px;align-items:flex-start}.philosophy .slips p{writing-mode:horizontal-tb;font-size:18px;padding:6px 12px;transform:rotate(-2deg)}.philosophy .slips p:nth-child(2){margin:0 0 0 28px;transform:rotate(2deg)}.statement{font-size:32px}}
@media(min-height:801px){.philosophy .slips p{font-size:16px;padding:8px 6px}}

/* Brand palette: retain the existing light/dark rhythm and typography. */
.dark em,.cta span{color:var(--accent)}
.hero h1 em{border-bottom-color:var(--accent)}
label span{background:var(--accent);color:var(--ink)}

/* Official photos mapped to the source's full visual and offset photo/text compositions. */
.official-brand{display:flex;align-items:center;gap:10px}
.official-brand img{display:block;width:130px;height:auto}
.hero-site-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:51% center;opacity:.4}
.hero::before{z-index:0;opacity:.13}
.training-photo{position:relative;margin:0;flex:0 0 38%;align-self:stretch;min-height:190px}
.training-photo img{width:100%;height:100%;max-height:310px;object-fit:cover;object-position:48% center;display:block}
.training-photo figcaption{position:absolute;bottom:12px;right:-10px;background:var(--paper);color:var(--ink);border:3px double var(--ink);padding:8px 5px;writing-mode:vertical-rl;font-size:17px;line-height:1.5;transform:rotate(-4deg)}
.work-photo-list{display:flex;align-items:center;gap:18px}
.work-photo-list>img{display:block;width:46%;height:190px;object-fit:cover;object-position:55% center;align-self:flex-start}
.work-photo-list .work-list{flex:1;padding-top:24px;min-width:0}
.work-photo-list .work-list li{font-size:20px;white-space:nowrap}
.company-word{width:100%;display:flex;justify-content:center;padding:30px 0}
.company-word img{display:block;width:min(100%,291px);height:auto}
@media(max-height:700px){.training-photo{min-height:170px}.training-photo img{max-height:240px}.training-photo figcaption{font-size:15px;padding:5px}.work-photo-list{gap:12px}.work-photo-list>img{height:145px}.work-photo-list .work-list{padding-top:15px}.work-photo-list .work-list li{font-size:17px}.company-word{padding:20px 0}}
@media(max-height:640px){.work-photo-list>img{height:125px}.work-photo-list .work-list{padding-top:8px}.work-photo-list .work-list li{font-size:16px}}
