:root{
  --orange:#F97316;--cream:#F7F1E7;--jam:#E4472E;--teal:#13B5C8;
  --yellow:#F5B21C;--pink:#F59BB0;--ink:#22252B;--white:#FFFDFA;
  --soft:#FFF8EE;--line:#e9ded1;--muted:#615f5c;
  --max:1180px;--rad:22px;
  --display:'Arial Rounded MT Bold','Trebuchet MS',Verdana,sans-serif;
  --body:'Trebuchet MS',system-ui,-apple-system,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.57;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}button,input{font:inherit}a{color:inherit}a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.wrap{width:min(calc(100% - 48px),var(--max));margin-inline:auto}
.skip{position:absolute;top:-100px;left:20px;z-index:200;padding:10px;background:#fff}.skip:focus{top:12px}
.preview-notice{background:var(--ink);color:white;text-align:center;padding:8px 15px;font-size:12px;font-weight:800;letter-spacing:.05em}
.site-header{position:relative;z-index:40;border-bottom:1px solid var(--line);background:rgba(255,253,250,.96)}
.header-row{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{display:inline-flex;align-items:center;text-decoration:none;flex-shrink:0}
.brand img{width:180px;height:auto}
.main-nav{display:flex;align-items:center;gap:30px}
.main-nav a{font-weight:800;font-size:14px;text-decoration:none;white-space:nowrap;position:relative}
.main-nav a:hover,.main-nav a[aria-current='page']{color:#b33f00}
.main-nav .nav-hello{background:var(--orange);color:var(--ink);padding:12px 19px;border-radius:50px}
.main-nav .nav-hello:hover,.main-nav .nav-hello[aria-current='page']{background:#e85b00;color:white}
.menu-toggle{display:none;border:1px solid var(--line);background:var(--white);border-radius:11px;width:46px;height:44px;align-items:center;justify-content:center;cursor:pointer}
.menu-toggle svg{width:23px;height:23px;stroke:var(--ink);stroke-width:2.5;fill:none;stroke-linecap:round}
h1,h2,h3{font-family:var(--display);letter-spacing:-.04em;line-height:1.085;margin:0;color:var(--ink)}
h1{font-size:clamp(48px,6.7vw,91px);font-weight:900}h2{font-size:clamp(35px,4.2vw,60px)}h3{font-size:24px}p{margin:0 0 18px}
.eyebrow{font-size:12px;letter-spacing:.115em;font-weight:900;text-transform:uppercase;margin:0 0 20px;color:#a64a16}
.lead{font-size:clamp(18px,2vw,22px);line-height:1.56;color:#464241;max-width:590px}
.highlight{color:var(--orange)}.highlight-teal{color:#068998}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--orange);color:#231e1b;text-decoration:none;padding:15px 24px;border:2px solid var(--orange);border-radius:12px;font-weight:900;font-size:15px;transition:transform .14s,background .14s}
.button:hover{background:#ff8d34;transform:translateY(-2px)}
.button.outline{background:transparent;border-color:var(--ink)}.button.outline:hover{background:var(--ink);color:white}
.button.dark{background:var(--ink);border-color:var(--ink);color:white}.button.dark:hover{background:#47484a}
.button:disabled{opacity:.6;cursor:not-allowed}
.text-link{font-weight:900;text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--orange)}
.hero{padding:80px 0 85px;overflow:hidden;background:var(--soft)}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:34px;min-height:530px}
.hero .lead{max-width:505px;margin:28px 0 30px}
.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.hero-note{font-size:14px;color:var(--muted);margin:24px 0 0}
.hero-stage{position:relative;aspect-ratio:1.05/1;min-height:440px;display:grid;place-items:center}
.hero-round{position:absolute;width:88%;aspect-ratio:1;background:#ffd49a;border-radius:50%;right:1%;top:5%}
.hero-stage>img{position:relative;z-index:2;width:min(95%,560px);filter:drop-shadow(0 12px 0 rgba(159,83,25,.08));object-fit:contain}
.hero-label{position:absolute;z-index:3;right:-1%;top:14%;padding:10px 15px;background:#fffefa;transform:rotate(5deg);border-radius:12px;border:2px solid var(--ink);font-weight:900;font-size:18px;box-shadow:4px 5px 0 rgba(34,37,43,.11)}
.section{padding:94px 0}
.section.light{background:var(--white)}.section.soft{background:var(--soft)}.section.teal{background:#e2f7f5}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:35px}
.section-head p{max-width:425px;margin-bottom:0;color:var(--muted)}
.pill{display:inline-block;border-radius:50px;background:#fff1d4;color:#8f3e0c;font-weight:900;font-size:12px;letter-spacing:.03em;padding:7px 12px}
.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.feature-card{padding:29px;min-height:225px;background:var(--cream);border-radius:22px;border:1px solid var(--line)}
.feature-card .feature-icon{font-size:32px;font-weight:900;display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:white;margin-bottom:23px}
.feature-card p{font-size:15px;color:var(--muted);margin:13px 0 0}
.gallery-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.mini-card,.collection-card{min-width:0}
.card-image{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:space-between;aspect-ratio:5/7;border-radius:13px;padding:30px 22px 24px;background:var(--yellow);text-align:center;border:1px solid rgba(34,37,43,.07)}
.card-image h3{font-size:clamp(23px,2.35vw,35px);line-height:1.1;letter-spacing:-.04em;text-wrap:balance;max-width:280px}
.card-image .card-visual{width:74%;max-width:225px;display:grid;place-items:center;flex:1;min-height:120px}
.card-image .card-visual img{width:100%;object-fit:contain;max-height:230px}
.card-image .card-shape{width:112px;height:112px;border-radius:27px;background:rgba(255,255,255,.32);transform:rotate(-7deg);display:grid;place-items:center;font-size:48px}
.card-image .card-status{font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;opacity:.7}
.card-image.bg-cream{background:#fff4e3}.card-image.bg-yellow{background:#ffd66e}.card-image.bg-pink{background:#ffd8dd}.card-image.bg-teal{background:#bcebe6}.card-image.bg-orange{background:#ffbe8d}.card-image.bg-lilac{background:#e5daed}
.card-info{padding:14px 2px 6px}.card-info h3{font-size:19px;letter-spacing:-.025em}.card-info p{font-size:13px;color:var(--muted);margin:4px 0 0}
.card-info a{font-weight:900;color:#ae3908}
.callout{display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;border-radius:26px;background:var(--ink);color:#fff;padding:60px;overflow:hidden}
.callout h2{color:white}.callout p{color:#ece2d9;max-width:490px;margin:20px 0 26px}
.callout-art{position:relative;display:flex;justify-content:center;align-items:center;min-height:330px}
.callout-art::before{content:"";position:absolute;background:#ffcd75;width:290px;height:290px;border-radius:50%}
.callout-art img{position:relative;width:340px;max-height:355px;object-fit:contain}
.page-hero{padding:82px 0 65px;background:var(--soft)}.page-hero h1{font-size:clamp(49px,6vw,78px);max-width:970px}.page-hero .lead{margin-top:25px;max-width:735px}
.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}
.about-fox{position:relative;display:grid;place-items:center;min-height:460px;border-radius:28px;background:#ffdab4;overflow:hidden}
.about-fox::before{content:"";width:320px;height:320px;background:#fff6e7;border-radius:50%;position:absolute}
.about-fox img{width:95%;max-width:490px;position:relative;z-index:2}
.richtext h2{margin-bottom:25px}.richtext p{color:#55514d;font-size:17px;margin-bottom:18px}.richtext .lead{font-weight:800;color:var(--ink)}
.principle{padding:28px;border:1px solid var(--line);background:var(--cream);border-radius:20px}
.principle .number{display:block;font-weight:900;font-size:14px;color:#a3471b;margin-bottom:30px}
.principle h3{margin-bottom:12px}.principle p{font-size:15px;color:var(--muted);margin-bottom:0}
.pullquote{background:var(--teal);padding:55px 0;text-align:center}.pullquote p{font-family:var(--display);font-weight:900;line-height:1.16;letter-spacing:-.04em;font-size:clamp(28px,4vw,52px);max-width:950px;margin:0 auto}
.controls{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0 30px}.filter{border:1.5px solid #d5c9bc;border-radius:50px;padding:10px 17px;background:white;cursor:pointer;font-weight:900;font-size:14px;color:var(--ink)}.filter:hover,.filter[aria-pressed='true']{background:var(--ink);border-color:var(--ink);color:white}
.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 19px}
.collection-card .card-image{padding:22px 16px 20px}.collection-card .card-image h3{font-size:clamp(19px,1.75vw,27px)}.collection-card .card-image .card-shape{height:86px;width:86px;font-size:37px}.collection-card .card-info h3{font-size:17px}
.collection-card .card-image.published{padding:0;background:white}.collection-card .card-image.published img{width:100%;height:100%;object-fit:cover}
.gallery-note{background:#fff0d9;border:1px solid #f1d5b0;padding:20px 24px;border-radius:16px;color:#543e2c;font-size:15px}
.empty-state{padding:30px;text-align:center;background:white;border-radius:16px}
.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.step{background:white;border-radius:22px;padding:30px;min-height:255px}
.step-number{font-family:var(--display);font-size:48px;font-weight:900;color:var(--orange);line-height:1}.step h3{margin:27px 0 14px}.step p{font-size:15px;color:var(--muted);margin:0}
.partner-panel{border:2px solid var(--ink);border-radius:22px;padding:39px;background:#fff7e9;display:flex;align-items:center;justify-content:space-between;gap:30px}
.partner-label{font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:900;color:#ae480b;margin-bottom:8px}
.partner-panel h2{font-size:clamp(30px,3.5vw,48px)}.partner-panel p{margin:11px 0 0;color:#514b45;max-width:580px}
.faq{max-width:900px;margin:0 auto}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{cursor:pointer;font-weight:900;font-size:18px;list-style-position:outside}.faq p{margin:15px 0 0;color:var(--muted)}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:stretch}
.contact-main{background:#ffe0bc;border-radius:26px;padding:56px 48px;min-height:445px}.contact-main h2{font-size:clamp(43px,4vw,59px)}.contact-main p{max-width:450px;margin-top:20px;color:#474039}
.contact-email{display:block;overflow-wrap:anywhere;font-family:var(--display);font-size:clamp(24px,3vw,36px);font-weight:900;color:#b54307;text-underline-offset:6px;margin:25px 0}
.copy-button{border:1.5px solid var(--ink);border-radius:12px;background:transparent;padding:11px 16px;font-weight:900;cursor:pointer}
.contact-side{border-radius:26px;background:#d4f3f0;padding:35px;display:flex;align-items:center;justify-content:center;overflow:hidden}.contact-side img{width:92%;max-width:390px}
.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}.contact-option{background:white;padding:26px;border-radius:18px}.contact-option h3{font-size:20px;margin-bottom:10px}.contact-option p{font-size:15px;color:var(--muted);margin-bottom:12px}
.site-footer{background:var(--ink);color:#fff;padding:62px 0 25px}
.footer-main{display:grid;grid-template-columns:1.4fr .85fr .85fr;gap:40px;padding-bottom:55px}
.footer-main .brand img{width:180px}.footer-main p{max-width:370px;margin:22px 0;color:#c8c5c1;font-size:14px}
.footer-links{display:grid;gap:11px}.footer-links strong{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#e4a171;margin-bottom:6px}.footer-links a{font-size:14px;text-decoration:none}.footer-links a:hover{text-decoration:underline}
.footer-bottom{border-top:1px solid #505057;padding-top:23px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12px;color:#b8b8bd}
.construction-tag{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1050px){.collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.main-nav{gap:17px}.wrap{width:min(calc(100% - 40px),var(--max))}.header-row{gap:14px}.brand img{width:160px}}
@media(max-width:800px){
  .header-row{min-height:74px}.menu-toggle{display:inline-flex}
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--white);padding:12px 24px 26px;flex-direction:column;gap:0;align-items:stretch;box-shadow:0 12px 20px rgba(0,0,0,.1)}
  .main-nav.open{display:flex}.main-nav a{padding:14px 7px;border-bottom:1px solid var(--line)}.main-nav .nav-hello{border-radius:12px;text-align:center;margin-top:12px;border:0}
  .hero{padding:45px 0 65px}.hero-grid{grid-template-columns:1fr;gap:2px;min-height:0}.hero-stage{min-height:0;width:min(100%,480px);margin:0 auto;aspect-ratio:1.1}.hero-content{order:1}.hero-stage{order:2}.hero-label{right:2%}
  .section{padding:69px 0}.section-head{align-items:start;flex-direction:column;gap:12px}.split,.callout,.contact-grid{grid-template-columns:1fr}.callout{padding:40px}.callout-art{min-height:210px}.callout-art img{width:290px}.callout-art::before{width:230px;height:230px}.split{gap:35px}.gallery-preview{gap:15px}.feature-grid{gap:14px}.feature-card{padding:22px}.feature-card h3{font-size:20px}.collection-grid{grid-template-columns:repeat(3,1fr)}
  .step-grid{gap:14px}.step{padding:23px}.partner-panel{align-items:flex-start;flex-direction:column}.footer-main{grid-template-columns:1.2fr 1fr;gap:35px}.footer-main>:last-child{grid-column:2}
}
@media(max-width:600px){
  body{font-size:16px}.wrap{width:calc(100% - 32px)}h1{font-size:clamp(44px,12vw,64px)}h2{font-size:clamp(33px,9vw,45px)}
  .hero-grid{gap:5px}.hero-stage{width:100%}.hero-label{font-size:14px;right:1%;top:12%}
  .hero .lead{margin:22px 0 25px}.hero-actions{align-items:stretch;gap:13px}.hero-actions .button{width:100%}.hero-note{margin-top:20px}
  .gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.gallery-preview>:last-child{display:none}
  .card-image{padding:18px 10px 17px}.card-image h3{font-size:clamp(18px,5vw,25px)}.card-image .card-visual{min-height:75px}.card-image .card-shape{width:65px;height:65px;font-size:30px}
  .feature-grid,.step-grid,.contact-options{grid-template-columns:1fr}
  .collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:21px 14px}
  .collection-card .card-image{padding:17px 9px 14px}.collection-card .card-image h3{font-size:clamp(17px,4.9vw,23px)}.collection-card .card-info h3{font-size:15px}
  .callout{padding:30px 23px}.about-fox{min-height:335px}.about-fox::before{width:240px;height:240px}
  .contact-main{min-height:0;padding:38px 26px}.contact-side{max-height:300px}.contact-side img{max-width:300px}.partner-panel{padding:27px}
  .footer-main{grid-template-columns:1fr 1fr;gap:28px}.footer-main>:first-child{grid-column:1/-1}.footer-main>:last-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:7px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
/* Photographic card previews: show full artwork, with a tidy status strip. */
.collection-card .card-image.published .card-status{
  position:absolute;inset:auto 0 0 0;z-index:2;padding:10px 8px;
  color:#22252b;background:rgba(247,241,231,.96);opacity:1;
}

/* V1.2 Public studio launch */
.preview-notice{display:none}
.feature-icon svg{height:30px;width:30px;display:block;stroke:var(--ink)}
.card-image.published{aspect-ratio:5/7;overflow:hidden;position:relative;background:#f4ece2!important;padding:0!important}
.card-image.published img,.collection-card .card-image.published img{display:block;width:100%;height:100%;object-fit:contain;background:var(--cream)}
.card-info{padding:17px 4px 10px}
.card-category{color:#9e4814!important;font-size:12px!important;font-weight:900;letter-spacing:.07em;text-transform:uppercase;margin-bottom:5px!important}
.card-description{font-size:14px!important;color:var(--muted)!important;margin-top:8px!important}
.card-cta{display:inline-flex;align-items:center;gap:7px;margin-top:14px;padding:9px 13px;border-radius:10px;background:var(--ink);color:#fff!important;text-decoration:none;font-size:13px;font-weight:800}
.card-cta:hover{background:#b7490b}
.social-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;align-items:center}
.social-heading{display:block;width:100%;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;color:inherit;opacity:.8}
.social-links a{display:inline-flex;gap:8px;align-items:center;color:inherit;text-decoration:none;font-size:13px;font-weight:900;padding:10px 12px;border:1px solid currentColor;border-radius:999px}
.social-links a:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.social-links svg{display:block;flex-shrink:0}
.social-contact{margin-top:35px}
.partner-logo-inline{position:absolute;bottom:0;right:0;left:0;display:flex;justify-content:center;align-items:center;min-height:65px;padding:13px 15px;border-radius:12px;background:rgba(255,255,255,.96)}
.partner-logo-inline img{width:min(220px,85%);height:auto;max-height:38px;object-fit:contain}
.partner-logo-card{display:inline-flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:30px;padding:22px 25px;border:1px solid #ead6bd;background:white;border-radius:18px;text-decoration:none}
.partner-logo-card span{font-weight:900;color:#94512a;font-size:13px}
.partner-logo-card img{width:220px;max-width:100%;height:auto}
.mini-partner-logo{width:170px;max-width:65%;margin-top:22px;height:auto}
.studio-section{background:#ffefda}
.studio-grid{display:grid;grid-template-columns:1.3fr .8fr;gap:70px;align-items:center}
.studio-grid>div:first-child p:not(.eyebrow){max-width:640px}
.studio-note{background:white;border-radius:24px;padding:33px;box-shadow:0 10px 35px rgba(34,37,43,.06)}
.studio-note strong{font-family:var(--display);font-size:23px}
.studio-note p{font-size:15px;color:var(--muted)}
.studio-note .button{margin-top:10px}
@media(max-width:800px){.studio-grid{grid-template-columns:1fr;gap:25px}.partner-logo-inline{bottom:-24px}.callout-art{padding-bottom:30px}}
@media(max-width:600px){.social-links a{font-size:12px;padding:8px}.partner-logo-card{padding:16px}.card-cta{font-size:12px}}
