@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:ital,wght@0,700;0,800;0,900;1,700;1,800&display=swap');
:root{--cream:#fff9eb;--red:#ce3428;--ink:#302c25;--yellow:#ffd04c;--line:#d8cfbd}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;min-height:100svh;display:flex;flex-direction:column}a{color:inherit}a:focus-visible{outline:3px solid #216cb0;outline-offset:6px}.draft{padding:8px 4%;background:#f4ebd6;font-size:10px;letter-spacing:1.5px;text-align:center;font-weight:700}.draft span{margin-left:18px;font-weight:400;letter-spacing:.2px}header{width:100%;max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:25px 5%;gap:24px;flex-shrink:0}.brand{font:900 31px/.95 'Fraunces',Georgia,serif;color:var(--red);text-decoration:none;letter-spacing:-1.5px;display:inline-block}.brand span{display:block;font:700 10px/2.3 'DM Sans',sans-serif;text-align:center;letter-spacing:4px}nav{display:flex;gap:32px;font-size:14px;font-weight:600}nav a{text-decoration:none;padding:8px 0}nav a:hover,nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--red);text-decoration-thickness:2px}.home-main{display:flex;flex:1;align-items:center;width:100%}.hero{width:100%;max-width:1320px;margin:0 auto;padding:28px 5% 38px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:25px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;margin:0 0 20px}h1,h2,p{margin-top:0}h1,h2{font-family:'Fraunces',Georgia,serif;font-weight:800}h1{font-size:clamp(64px,7.6vw,106px);line-height:.99;letter-spacing:-5px;margin-bottom:26px}em{color:var(--red);font-weight:700}p{line-height:1.65}.intro{max-width:410px;font-size:16px;margin-bottom:28px}.button{min-height:48px;padding:15px 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border-radius:5px;text-decoration:none;font-size:13px;font-weight:700}.red{background:var(--red);color:white;box-shadow:0 3px 0 #97281f}.red:hover{background:#b42b21}.text-link,.back-link{font-size:14px;text-underline-offset:5px}.mascot{position:relative;text-align:center;padding-top:30px}.mascot img{width:100%;height:auto;max-width:min(520px,58svh);display:block;margin:auto}.hello{display:inline-block;position:absolute;right:5%;top:8px;transform:rotate(7deg);background:var(--red);color:white;padding:13px 18px;border-radius:5px;font-size:12px;letter-spacing:1px;font-weight:700}.ticker{background:var(--red);color:var(--cream);display:flex;align-items:center;justify-content:space-around;gap:20px;padding:18px 4%;font-size:12px;font-weight:700;letter-spacing:2px;border-top:3px solid var(--ink);border-bottom:3px solid var(--ink);flex-shrink:0}.ticker b{color:var(--yellow);font-size:23px}.page-content{width:100%;max-width:1200px;margin:0 auto;padding:55px 5% 65px;flex:1}.page-content h1{font-size:clamp(50px,6vw,82px);letter-spacing:-3px}.about-content{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:90px}.about-content .intro{max-width:520px;font-size:18px}.body-copy{font-size:16px;max-width:590px}.about-note{border-left:4px solid var(--red);padding:15px 0 15px 30px}.about-note h2{font-size:34px;letter-spacing:-1px;line-height:1.1}.about-note p{max-width:320px;font-size:15px}.page-footer{margin:auto auto 0;border-top:1px solid var(--line);padding:22px 5%;font-size:12px;width:100%;max-width:1200px;display:flex;justify-content:space-between}.services-content{max-width:1080px}.services-content h1{margin-bottom:16px}.services-intro{font-size:16px;margin-bottom:30px}.service-list{border-top:1px solid var(--ink)}.service-list>a{display:flex;align-items:center;gap:30px;padding:24px 15px;border-bottom:1px solid var(--line);text-decoration:none}.service-list>a:hover{background:#f5e9ce}.number{font:700 18px 'Fraunces',serif;color:var(--red)}.service-list h2{font-size:28px;margin-bottom:6px;letter-spacing:-.6px}.service-list p{font-size:14px;margin:0}.arrow{margin-left:auto;font-size:26px}.detail-content{max-width:1080px}.back-link{display:inline-block;margin-bottom:50px}.detail-content h1{margin-bottom:20px}.detail-lead{font:700 28px 'Fraunces',Georgia,serif}.connection-note{margin-top:38px;border-top:1px solid var(--line);padding-top:22px;max-width:590px;font-size:13px}.connection-note p{margin:8px 0 0;font-size:13px;color:#655e52}@media(min-width:761px) and (min-height:700px){.home{height:100svh}.hero h1{font-size:min(7.6vw,13svh,106px)}.hero .intro{margin-bottom:24px}}@media(max-width:760px){header{padding:22px 6%}.brand{font-size:25px}nav{gap:19px;font-size:12px}.hero{grid-template-columns:1fr;padding:30px 6% 40px;gap:18px}h1{font-size:76px;letter-spacing:-4px}.hero-copy .intro{max-width:440px}.mascot{max-width:360px;width:100%;justify-self:center}.mascot img{max-width:320px}.hello{right:0;font-size:10px}.ticker{font-size:10px;letter-spacing:1px;padding:16px 5%}.ticker span:last-child,.ticker b:last-of-type{display:none}.draft{font-size:9px}.draft span{display:block;margin:4px 0 0}.eyebrow{font-size:10px}.page-content{padding:35px 6% 45px}.about-content{grid-template-columns:1fr;gap:30px}.about-note{padding:5px 0 5px 20px}.service-list>a{gap:17px;padding:23px 4px}.service-list h2{font-size:24px}.service-list p{font-size:13px}.back-link{margin-bottom:35px}.page-footer{padding:22px 6%}}
/* Draft 3: stationary frame, manually advanced cue-card panels. */
.home{height:100dvh;min-height:0;overflow:hidden}.home header{padding-top:20px;padding-bottom:15px}.slide-main{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.slide-stage{flex:1;min-height:0;position:relative;overflow:hidden;isolation:isolate}.slide{position:absolute;inset:0;background:var(--cream);visibility:hidden;z-index:0;transform-origin:50% 95%;display:flex;align-items:center;justify-content:center}.slide.is-active{visibility:visible;z-index:2}.slide.is-revealing{visibility:visible;z-index:1}.slide .hero{padding-top:20px;padding-bottom:20px;max-height:100%;height:100%}.slide .hero h1{font-size:clamp(55px,min(7.6vw,13dvh),106px)}.slide .intro{margin-bottom:0;max-width:410px}.slide .mascot img{max-width:min(520px,52dvh)}.slide-controls{height:65px;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:24px;padding:8px 5% 14px}.slide-controls button{width:43px;height:40px;border:1px solid var(--ink);border-radius:4px;background:transparent;color:var(--red);font-size:26px;cursor:pointer;transition:background .15s}.slide-controls button:hover{background:var(--yellow)}.slide-controls button:focus-visible{outline:3px solid #216cb0;outline-offset:4px}.slide-controls button:disabled{cursor:default;opacity:.45}.slide-controls p{margin:0;min-width:112px;text-align:center;font-size:11px;letter-spacing:1px;font-weight:700}.slide-controls p span{display:inline-block;margin-left:10px;font-weight:400;letter-spacing:0}.slide-about{display:grid;grid-template-columns:1.25fr 1fr;gap:8%;max-width:1320px;width:100%;padding:25px 5%;align-items:center}.slide-about h2{font-size:clamp(44px,min(6.5vw,11dvh),88px);letter-spacing:-3px;line-height:1.05;margin-bottom:25px}.about-intro{max-width:470px;font-size:17px}.about-status{font-size:13px;margin-bottom:0;color:#655e52}.about-services{border-left:3px solid var(--red);padding:8px 0 8px 32px}.about-services>div{margin-bottom:22px}.about-services h3{font:700 25px 'Fraunces',Georgia,serif;letter-spacing:-.5px;margin:0 0 6px}.about-services p:not(.eyebrow){margin:0;font-size:14px}.about-services small{font-size:11px;color:#655e52}.home .ticker{margin:0;max-width:none;width:100%}@media(max-width:760px){.home header{padding:16px 6% 8px}.slide .hero{grid-template-columns:1fr 1fr;gap:15px;padding:20px 6%}.slide .hero h1{font-size:clamp(40px,8vw,65px);letter-spacing:-2px}.slide .hero .eyebrow{font-size:8px;letter-spacing:1px;line-height:1.5;margin-bottom:14px}.slide .intro{font-size:13px;line-height:1.55}.slide .mascot{padding-top:24px}.slide .mascot img{max-width:100%}.slide .hello{font-size:8px;padding:9px;top:0}.slide-about{gap:25px;grid-template-columns:1fr;padding:12px 6%}.slide-about h2{font-size:clamp(36px,8vw,55px);letter-spacing:-1.5px;margin-bottom:14px}.slide-about .eyebrow{margin-bottom:12px}.about-intro{font-size:14px;margin-bottom:10px;max-width:100%}.about-status{font-size:11px}.about-services{padding:0 0 0 18px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.about-services>.eyebrow,.about-services>small{grid-column:1/-1}.about-services>.eyebrow{margin:0}.about-services>div{margin:0}.about-services h3{font-size:19px}.about-services p:not(.eyebrow){font-size:11px}.about-services small{font-size:10px}.slide-controls{height:56px;padding-bottom:9px}.home .ticker{padding:12px 5%;font-size:8px;gap:10px}.home .ticker b{font-size:18px}}@media(max-width:760px) and (max-height:650px){.draft{padding:5px}.draft span{display:none}.home header{padding-top:10px}.slide-about{gap:14px}.slide-about h2{font-size:34px;margin-bottom:10px}.about-intro{font-size:12px}.about-services h3{font-size:17px}.slide-controls{height:46px}.slide-controls button{height:32px;width:37px}.home .ticker{padding-top:9px;padding-bottom:9px}}@media(min-width:761px) and (max-height:650px){.slide .hero h1{font-size:clamp(40px,11dvh,70px)}.slide-about h2{font-size:50px}.slide-about .about-intro{font-size:14px}.about-services>div{margin-bottom:12px}.home .ticker{padding:10px 4%}.slide-controls{height:48px}}

#sound-toggle{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:20px;font:500 11px 'DM Sans',Arial,sans-serif;padding:9px 14px;cursor:pointer}#sound-toggle:focus-visible{outline:3px solid #216cb0;outline-offset:4px}#sound-toggle span{margin-left:7px}.rufus-theme #sound-toggle{color:var(--navy);border-color:#c9ced6}
.mascot-art{position:relative;width:100%;max-width:min(520px,52dvh);aspect-ratio:1;margin:auto}
.mascot-art img{width:100%;height:100%;object-fit:contain}
.nose-boop{position:absolute;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.nose-wolf{left:54.1%;top:45%;width:14.2%;height:11.8%;clip-path:polygon(8% 5%,35% 0,66% 8%,88% 27%,99% 49%,92% 71%,72% 87%,45% 100%,26% 92%,14% 71%,4% 47%,0 23%)}
.nose-rufus{left:62%;top:56.3%;width:11.8%;height:8.2%;clip-path:polygon(4% 19%,20% 3%,47% 0,76% 10%,95% 31%,100% 53%,85% 77%,51% 100%,26% 83%,8% 53%,0 34%)}
.nose-boop:focus-visible{background:#ffffff30;outline:3px solid white;outline-offset:-3px}
.confetti-rain{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:50}
.confetti-rain i{position:absolute;top:0;display:block}
@media(max-width:760px){.mascot-art{max-width:100%}}
