:root{--white:#fafafa;--black:#070707;--yellow:#ffc032;--blue:#5a8dff;--green:#33ab64;--purple:#bd72cd;--orange:#ff733e;--muted-on-dark:#fafafab8;--muted-on-light:#070707a8;--line-dark:#fafafa29;--line-light:#07070724;--sora:"Sora", ui-sans-serif, system-ui, sans-serif;--bell:"Schoolbell", "Comic Sans MS", cursive;--fs-hero:clamp(30px, 7.2vw, 64px);--fs-display:clamp(64px, 19vw, 240px);--fs-title:clamp(32px, 6vw, 56px);--fs-sub:clamp(20px, 2.4vw, 24px);--fs-body:16px;--fs-btn:16px;--fs-btn-lg:clamp(20px, 2.2vw, 24px);--gutter:clamp(20px, 5.5vw, 72px);--maxw:1280px;--nav-h:64px;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + var(--safe-t) + 16px)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}body{background:var(--black);color:var(--white);font-family:var(--sora);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;padding-top:var(--safe-t);padding-bottom:var(--safe-b);margin:0;line-height:1.6}img{max-width:100%;display:block}.wrap{max-width:var(--maxw);padding:0 var(--gutter);margin:0 auto}.ph{background:repeating-linear-gradient(135deg, #ffffff0d 0 10px, #ffffff05 10px 20px), var(--ph-tint,#1c1c1c);text-align:center;border-radius:14px;place-items:center;display:grid;position:relative;overflow:hidden}.ph.on-light{background:repeating-linear-gradient(135deg, #0707070f 0 10px, #07070705 10px 20px), var(--ph-tint,#e4e4e4)}.ph span{font-family:var(--sora);letter-spacing:.12em;text-transform:uppercase;color:#fafafa8c;padding:8px 12px;font-size:11px}.ph.on-light span{color:#07070773}.btn{font-family:var(--bell);font-size:var(--fs-btn);color:var(--black);background:var(--yellow);cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 30px;text-decoration:none;transition:transform .18s,filter .18s;display:inline-flex}.btn:hover{filter:brightness(1.06);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.btn.lg{font-size:var(--fs-btn-lg);padding:14px 40px}.nav{top:var(--safe-t);z-index:50;height:var(--nav-h);background:0 0;border-bottom:1px solid #0000;align-items:center;transition:background .25s,border-color .25s;display:flex;position:sticky}.nav.stuck{backdrop-filter:blur(10px);border-bottom-color:var(--line-dark);background:#070707db}.nav .wrap{justify-content:space-between;align-items:center;gap:16px;width:100%;display:flex}.brand{cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:flex}.brand img{width:auto;height:34px}.nav-links{align-items:center;gap:clamp(14px,2.4vw,32px);display:flex}.nav-links a,.nav-links button{font-family:var(--sora);color:var(--white);cursor:pointer;opacity:.82;background:0 0;border:0;padding:4px 0;font-size:15px;text-decoration:none;transition:opacity .18s,color .18s}.nav-links a:hover,.nav-links button:hover{opacity:1;color:var(--yellow)}.nav-links a:focus-visible,.nav-links button:focus-visible{outline:2px solid var(--yellow);outline-offset:4px}.socials{align-items:center;gap:12px;display:flex}.socials a{color:var(--white);opacity:.8;place-items:center;transition:opacity .18s,transform .18s;display:grid}.socials a:hover{opacity:1;transform:translateY(-2px)}.socials svg{fill:currentColor;width:18px;height:18px}.burger{cursor:pointer;color:var(--white);background:0 0;border:0;margin-right:-8px;padding:8px;display:none}.burger svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:26px;height:26px}@media (width<=860px){.nav-links,.nav .socials{display:none}.burger{display:block}.nav-links.open{backdrop-filter:blur(10px);border-bottom:1px solid var(--line-dark);padding:16px var(--gutter) 24px;background:#070707f7;flex-direction:column;align-items:flex-start;gap:4px;display:flex;position:absolute;top:100%;left:0;right:0}.nav-links.open a,.nav-links.open button{padding:10px 0;font-size:20px}}.hero{background:var(--black);min-height:calc(100vh - var(--nav-h) - var(--safe-t) - var(--safe-b));min-height:calc(100dvh - var(--nav-h) - var(--safe-t) - var(--safe-b));align-content:center;padding:clamp(40px,8vw,96px) 0 clamp(56px,10vw,120px);display:grid}.hero .wrap{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(24px,5vw,64px);display:grid}.hero h1{font-size:var(--fs-hero);letter-spacing:-.02em;margin:0 0 clamp(20px,3vw,32px);font-weight:400;line-height:1.1}.hero h1 span{white-space:nowrap;display:block}.hero h1 strong{font-weight:600}.hero-art img{width:100%;height:auto}@media (width<=760px){.hero .wrap{grid-template-columns:1fr}.hero-art{order:-1;max-width:420px;margin:0 auto}}.light{background:var(--white);color:var(--black);--fade:var(--white)}.dark{background:var(--black);color:var(--white);--fade:var(--black)}.sec{padding:clamp(56px,10vw,120px) 0}.title-bell{font-family:var(--bell);font-size:var(--fs-title);margin:0 0 clamp(20px,3vw,36px);font-weight:400;line-height:1.15}.title-bell.orange{color:var(--orange)}.title-bell.center{text-align:center}.pieces{grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,32px);max-width:940px;margin:0 auto;display:grid}.piece{aspect-ratio:9/16;cursor:pointer;opacity:0;border:0;border-radius:18px;padding:0;transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1);overflow:hidden;transform:translateY(42px)}.piece.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.piece{opacity:1;transform:none}}.piece .ph,.piece img{border-radius:0;position:absolute;inset:0}.piece img{object-fit:cover;width:100%;height:100%}.piece{position:relative}.piece:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.piece .zoom{z-index:2;background:var(--yellow);width:38px;height:38px;color:var(--black);opacity:0;border-radius:50%;place-items:center;transition:opacity .22s,transform .22s;display:grid;position:absolute;bottom:12px;right:12px;transform:scale(.7)}.piece:hover .zoom,.piece:focus-visible .zoom{opacity:1;transform:scale(1)}@media (width<=680px){.pieces{grid-template-columns:1fr;max-width:320px}}.about{text-align:center;max-width:620px;margin:0 auto}.about .dog{width:160px;height:auto;margin:0 auto 20px}.about p{color:var(--muted-on-light);margin:0 0 16px}.band{background:var(--yellow);color:var(--black);text-align:center;padding:clamp(28px, 5vw, 56px) var(--gutter)}.band .big{font-family:var(--bell);font-size:var(--fs-display);margin:0;line-height:.95}.band .small{font-family:var(--bell);margin:4px 0 0;font-size:clamp(18px,3vw,34px)}.carousel{margin-bottom:clamp(20px,3vw,32px);position:relative}.carousel:before,.carousel:after{content:"";pointer-events:none;z-index:1;opacity:0;width:clamp(36px,8vw,110px);transition:opacity .25s;position:absolute;top:0;bottom:0}.carousel:before{background:linear-gradient(to right, var(--fade), transparent);left:0}.carousel:after{background:linear-gradient(to left, var(--fade), transparent);right:0}.carousel[data-at-start=false]:before,.carousel[data-at-end=false]:after{opacity:1}.carousel-hint{text-align:center;margin:0 0 clamp(32px,5vw,56px)}.carousel-hint span{font-family:var(--bell);color:var(--muted-on-light);border:1px solid var(--line-light);border-radius:999px;padding:7px 16px;font-size:15px;line-height:1;display:inline-block}.track{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-left:var(--gutter);padding:4px var(--gutter);scrollbar-width:none;cursor:grab;gap:20px;display:flex;overflow-x:auto}.track::-webkit-scrollbar{display:none}.track.dragging{cursor:grabbing;scroll-snap-type:none}.card{aspect-ratio:4/5;cursor:pointer;border:0;border-radius:16px;flex:0 0 clamp(200px,42vw,280px);padding:0;transition:transform .25s;position:relative;overflow:hidden}.card:hover{transform:translateY(-4px)}.card:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.card .ph,.card img{border-radius:0;position:absolute;inset:0}.card img{object-fit:cover;width:100%;height:100%}.nav-arrow{z-index:2;background:var(--yellow);width:42px;height:42px;color:var(--black);cursor:pointer;opacity:.85;border:0;border-radius:50%;place-items:center;transition:opacity .2s,filter .2s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.nav-arrow:hover{opacity:1;filter:brightness(1.08)}.nav-arrow:focus-visible{opacity:1;outline:3px solid var(--orange);outline-offset:3px}.nav-arrow svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.nav-arrow.prev{left:max(8px, calc(var(--gutter) - 54px))}.nav-arrow.next{right:max(8px, calc(var(--gutter) - 54px))}.nav-arrow[hidden]{display:none}@media (hover:none){.nav-arrow{display:none}}.services{grid-template-columns:repeat(3,1fr);gap:clamp(28px,5vw,56px) clamp(20px,4vw,48px);max-width:960px;margin:0 auto;display:grid}.service{text-align:center}.service .icon{background:var(--yellow);width:clamp(92px,14vw,128px);height:clamp(92px,14vw,128px);color:var(--black);border-radius:50%;place-items:center;margin:0 auto 16px;display:grid}.service .icon svg{width:52%;height:52%}.service h3{font-family:var(--sora);font-size:var(--fs-sub);margin:0 0 8px;font-weight:600}.service p{color:var(--muted-on-dark);margin:0;font-size:15px}@media (width<=720px){.services{grid-template-columns:repeat(2,1fr)}}@media (width<=400px){.services{grid-template-columns:1fr}}.cta-band{background:var(--white);padding:clamp(48px,8vw,96px) 0}.cta-card{background:var(--yellow);color:var(--black);text-align:center;padding:clamp(36px, 6vw, 64px) var(--gutter);border-radius:24px}.cta-card h2{font-family:var(--bell);font-size:var(--fs-title);margin:0 0 24px;font-weight:400}.cta-card .btn{background:var(--black);color:var(--yellow)}.footer{background:var(--black);padding:clamp(40px,6vw,72px) 0 clamp(28px,4vw,48px);overflow:hidden}.wordmark{width:100%;margin-bottom:clamp(24px,4vw,44px)}.wordmark img{width:100%;height:auto}.footer-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;display:flex}.footer h3{font-family:var(--sora);font-size:var(--fs-sub);margin:0 0 8px;font-weight:600}.footer p{color:var(--muted-on-dark);max-width:34ch;margin:0 0 20px}.footer .btn{font-size:var(--fs-btn-lg)}.footer-right{flex-direction:column;align-items:flex-end;gap:18px;display:flex}.social-pills{gap:10px;display:flex}.social-pills a{width:38px;height:38px;color:var(--white);border-radius:50%;place-items:center;transition:transform .18s;display:grid}.social-pills a:hover{transform:translateY(-3px)}.social-pills a:first-child{background:var(--orange)}.social-pills a:nth-child(2){background:var(--blue)}.social-pills svg{width:17px;height:17px;fill:var(--black)}.made{font-family:var(--bell);white-space:nowrap;color:var(--white);margin:0;font-size:clamp(15px,2.9vw,24px)}@media (width<=720px){.footer-row{flex-direction:column;align-items:flex-start}.footer-right{align-items:flex-start}}.form-sec{padding:clamp(40px,7vw,96px) 0 clamp(56px,9vw,110px)}.form-grid{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(28px,6vw,80px);display:grid}.form-intro h1{font-family:var(--bell);font-size:var(--fs-title);color:var(--yellow);margin:0 0 20px;font-weight:400}.form-intro p{color:var(--muted-on-dark);max-width:34ch;margin:0 0 16px}.field{margin-bottom:20px}.field label{font-size:var(--fs-sub);margin-bottom:8px;font-weight:400;display:block}.field .req{color:var(--white)}.field input,.field select,.field textarea{border:1px solid var(--white);width:100%;color:var(--white);font-family:var(--sora);font-size:var(--fs-body);background:0 0;border-radius:8px;padding:14px 16px;transition:border-color .18s,box-shadow .18s}.field textarea{resize:vertical;min-height:150px;line-height:1.6}.field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FAFAFA' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:20px;padding-right:46px}.field select option{color:var(--white);background:#141414}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--yellow);outline:none;box-shadow:0 0 0 3px #ffc03238}.field input::placeholder,.field textarea::placeholder{color:#fafafa59}.privacy{color:#fafafa80;text-align:center;margin:18px 0 0;max-width:46ch;margin-inline:auto;font-size:12px;line-height:1.6}.privacy a{color:#fafafab8;text-underline-offset:2px;text-decoration:underline}.privacy a:hover{color:var(--yellow)}.hp{opacity:0;height:0;position:absolute;left:-9999px;overflow:hidden}.submit{width:100%;margin-top:8px}.form-note{color:var(--muted-on-dark);text-align:center;margin-top:14px;font-size:13px}@media (width<=800px){.form-grid{grid-template-columns:1fr}}dialog.lb{background:0 0;border:0;width:100%;max-width:100vw;height:100%;max-height:100vh;padding:0;overflow:visible}dialog.lb::backdrop{opacity:0;background:#040404e6;transition:opacity .28s}dialog.lb[open]::backdrop{opacity:1}@starting-style{dialog.lb[open]::backdrop{opacity:0}}.lb-inner{padding:var(--lb-pad);--lb-pad:clamp(16px, 4vw, 56px);place-items:center;display:grid;position:absolute;inset:0}.lb-figure{--lb-max-w:min(88vw, 620px);--lb-max-h:calc(100dvh - 2 * var(--lb-pad));max-width:var(--lb-max-w);max-height:var(--lb-max-h);opacity:0;border-radius:18px;transition:transform .3s cubic-bezier(.2,.8,.3,1),opacity .3s;overflow:hidden;transform:scale(.94)}dialog.lb[open] .lb-figure{opacity:1;transform:scale(1)}.lb-figure img{max-width:100%;max-height:var(--lb-max-h);width:auto;height:auto;display:block}.lb-figure .ph{width:var(--lb-max-w)}.lb-close{top:calc(clamp(14px, 3vw, 28px) + var(--safe-t));border:1px solid var(--line-dark);width:44px;height:44px;color:var(--white);cursor:pointer;z-index:2;background:#ffffff17;border-radius:50%;place-items:center;font-size:22px;line-height:1;display:grid;position:fixed;right:clamp(14px,3vw,28px)}.lb-close:hover{background:#ffffff2e}.lb-close:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}[hidden]{display:none!important}.prose{max-width:64ch}.prose .title-bell{color:var(--yellow);margin-bottom:8px}.prose .meta{color:#fafafa80;margin:0 0 32px;font-size:14px}.prose h2{font-family:var(--bell);font-size:var(--fs-sub);color:var(--yellow);margin:36px 0 10px;font-weight:400}.prose p{color:var(--muted-on-dark);margin:0 0 14px}.prose strong{color:var(--white);font-weight:600}.prose a{color:var(--white);text-underline-offset:2px;text-decoration:underline}.prose a:hover{color:var(--yellow)}.prose .back{margin-top:40px}.prose .back a{font-family:var(--bell);font-size:18px;text-decoration:none}.prose .back a:hover{text-decoration:underline}
