/* Layout rules for mixed still/video galleries and a unified collaboration flow. */
body .motion-hero{background:#122B25;max-width:none;width:100%;padding-left:max(4vw,calc((100vw - 1472px)/2));padding-right:max(4vw,calc((100vw - 1472px)/2));gap:0}
body .motion-hero .stage{margin-top:0;margin-bottom:0;max-width:100%;min-width:0}
body .motion-hero .copy .lead,body .motion-hero .copy .intro{color:#fff}
body .motion-hero h1{text-wrap:initial}
body .cinema-strip{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:20px}
body .cinema-strip figure{min-width:0;margin:0;transform:none;translate:none}
body .cinema-strip figure>img,body .cinema-strip .project-motion{width:100%;height:auto;aspect-ratio:16/9}
body .cinema-strip figure>img{object-fit:cover}
body .cinema-strip .project-motion video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
body .cinema-strip figcaption{padding-top:12px;margin:0;font-size:14px;line-height:1.5}
body .portrait-sequence{padding:0;margin:25px 0 0;align-items:start;gap:16px}
body .portrait-sequence figure:nth-child(n){transform:none;translate:none;margin:0;padding:8px 8px 14px;min-width:0}
body .portrait-sequence figure>img,body .portrait-sequence .project-motion{width:100%;height:auto;aspect-ratio:9/16}
body .portrait-sequence figure>img{object-fit:cover}
body .portrait-sequence .project-motion video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
body .portrait-sequence figcaption{font-size:14px;line-height:1.5;padding:12px 2px 0}
body .film-faenora{background:#F6F0E8;color:#122B25}
body .faenora-title{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start;gap:20px 7%;padding:0 5vw 45px}
body .faenora-title h3{margin:0;font-size:clamp(56px,6vw,94px);line-height:.98}
body .faenora-title>.eyebrow{margin:0;grid-column:1/-1}
body .faenora-title>p:last-child{justify-self:start;align-self:start;font-size:20px;line-height:1.5;margin:0;max-width:30ch}
body .faenora-art{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;gap:20px;padding:0 5vw;align-items:start}
body .faenora-art>img:nth-child(n),body .faenora-art>.project-motion{grid-column:auto;grid-row:auto;width:100%;height:auto;aspect-ratio:16/9;min-width:0;transform:none;translate:none;align-self:start}
body .faenora-art>img{object-fit:cover}
body .faenora-art>.project-motion video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:contain}
body .faenora-title h3 em{color:#A4472E;text-decoration:none}
body .atelier-intro{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:7%;align-items:start}
body .atelier-intro h2{font-size:clamp(54px,5.3vw,82px);line-height:1.02;text-wrap:initial;margin:0}
body .atelier-intro>p{margin:42px 0 0;font-size:18px;line-height:1.7;max-width:47ch;align-self:start}
body .artist-about{background:#122B25;color:#fff;margin:0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30}
body .about-words{background:#122B25;color:#fff;padding:70px 6vw}
body .about-words h2{color:#fff}
body .about-words h2 em{color:#DC8063}
body .about-words>p:not(.eyebrow):not(.about-lead),body .about-words .about-lead,body .about-words .underlink{color:#fff}
body .about-words .eyebrow{color:#DC8063}
body .about-words .about-signature{filter:none;opacity:1}
body .about-art{background:#F6F0E8}
body .rates .section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:7%;align-items:start}
body .rates .section-head h2{font-size:clamp(54px,5.4vw,84px);text-wrap:initial}
body .rates .section-head>p{font-size:18px;line-height:1.65;margin:40px 0 0;max-width:44ch}
body .rates .rate-grid{gap:24px}
body .rates .rate.visual-sets{grid-column:1/-1;margin:0;padding:30px;position:relative;background:#F6F0E8;border-color:#122B2540}
body .rates .visual-sets .eyebrow{padding-right:30px;min-height:0}
body .rates .visual-sets .extra-body{padding:0;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:6%;align-items:center}
body .rates .visual-sets h3{font-size:clamp(36px,4vw,58px);margin:0 0 18px}
body .rates .visual-sets p{font-size:16px;line-height:1.65}
body .rates .visual-sets .pfps{align-items:center}
body .rates .included{display:flex;gap:14px 32px;justify-content:flex-start;align-items:center;padding:26px 0;margin-top:12px;font-size:15px}
body .rates .included strong{margin-right:0}
body .rates .pricing-detail{font-size:16px;line-height:1.65;max-width:80ch;color:#122B25;margin-top:20px}
body .rates .package-status{font-size:14px;margin:15px 0 0;min-height:0}
body .rates .package-status:empty{display:none}
body .faq-list details,body .faq-list details:first-child{border:0;border-top:1px solid #122B2533;padding:0;background:transparent}
body .faq-list details:last-child{border-bottom:1px solid #122B2533}
body .faq-list details[open]{background:transparent;border-color:#122B2533}
body .faq-list summary{padding:22px 0;font-size:18px;line-height:1.5}
body .faq-list details>p{font-size:16px;line-height:1.7;margin:0 0 24px;color:#122B25}
body .contact{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:7%;color:#fff}
body .contact p,body .contact label,body .contact h3,body .contact .reply,body .contact .form-note{color:#fff}
body .contact .form-note{font-size:15px;line-height:1.6}
body .contact form{padding:30px;border:1px solid #ffffff45;background:#122B25}
body .contact form label{font-size:15px;font-weight:500;margin-bottom:20px}
body .contact input,body .contact select,body .contact textarea{font-size:16px;line-height:1.5;color:#fff;padding:12px 14px;border:1px solid #ffffff65;border-radius:3px;background:#122B25;margin-top:8px}
body .contact input::placeholder,body .contact textarea::placeholder{color:#ffffffB3}
body .contact select option{color:#fff;background:#122B25}
body .contact .form-row{gap:18px}
body .contact form .button{width:100%;justify-content:space-between;margin-top:8px}
body .contact button:disabled{cursor:not-allowed;opacity:.65}
body .contact .call-invite{border-top:1px solid #ffffff45;margin:32px 0;padding-top:25px}
body .contact .call-invite .eyebrow{color:#DC8063;margin:0 0 12px}
body .contact .call-invite h3{font-size:27px;margin:0 0 14px}
body .contact .call-invite p:not(.eyebrow){font-size:16px;line-height:1.6;margin:0 0 20px}
body .contact .call-link[aria-disabled="true"]{opacity:.65;cursor:not-allowed}
@media(max-width:850px){body .faenora-title,body .atelier-intro,body .rates .section-head,body .contact{grid-template-columns:1fr;gap:24px}body .atelier-intro>p,body .rates .section-head>p{margin:0;max-width:60ch}body .faenora-title h3{font-size:64px}body .rates .visual-sets .extra-body{grid-template-columns:1fr;gap:24px}body .about-words{padding:45px 6vw}body .contact form{padding:24px}body .faenora-title>p:last-child{max-width:45ch}}
@media(max-width:600px){body .cinema-strip,body .faenora-art{grid-template-columns:1fr;gap:24px}body .portrait-sequence{grid-template-columns:1fr;max-width:360px;margin:24px auto}body .portrait-sequence figure{width:100%}body .portrait-sequence figcaption{font-size:15px}body .rates .included{display:grid;gap:10px}body .rates .rate.visual-sets{padding:24px}body .contact .form-row{grid-template-columns:1fr;gap:0}body .contact form{padding:20px}body .atelier-intro h2{font-size:clamp(50px,11vw,66px)}}
/* Booking-led refinements: a bounded canvas and clearer editorial hierarchy. */
body .motion-hero{grid-template-columns:minmax(0, .95fr) minmax(0,1.05fr);column-gap:3%;padding-top:125px;padding-bottom:56px}
body .motion-hero h1{font-size:clamp(64px,6.5vw,100px)}
body .motion-hero .stage{height:auto;aspect-ratio:1.12;margin-left:0}
body .motion-hero .hero-film{margin:0}
body .motion-hero .primary{width:88%;top:2%;left:2%}
body .motion-hero .travel{top:56%;left:0;width:66%}
body .motion-hero .gossip{top:33%;right:0;width:29%}
.hero-actions,.contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 26px}
body .motion-hero .hero-actions .button,body .contact .contact-actions .button{background:#DC8063;color:#122B25;font-size:16px;padding:17px 22px;border:1px solid #DC8063;white-space:normal;line-height:1.4}
body .motion-hero .hero-actions .underlink{color:white;font-size:16px}
body .testimonials .testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
body .testimonials{display:block}
body .testimonial-heading{margin-bottom:40px;max-width:850px}
body .testimonial-card{margin:0;min-width:0}
body .seven-steps .scope-note{grid-column:1/-1;padding:36px 40px;background:#122B25;color:white;border:0;border-left:5px solid #DC8063;margin-top:24px;display:grid;grid-template-columns:1fr 1.4fr;gap:16px 40px}
body .scope-note h3{font-size:clamp(30px,3vw,46px);line-height:1.12;color:#DC8063;margin:0;text-transform:none;letter-spacing:0}
body .scope-note p{font-size:18px;color:white;margin:0;max-width:65ch}
body .scope-note a{grid-column:2;color:white;justify-self:start}
body .rates .included{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:28px;background:#122B25;color:white;border:0;padding:36px;margin-top:40px;align-items:start}
body .included h3{font-size:36px;line-height:1.1;margin:0;color:white}
body .included .eyebrow,body .included article>span{color:#DC8063}
body .included h4{font-size:19px;color:white;margin:12px 0}
body .included p{font-size:16px;line-height:1.6;color:white;margin:0}
body .included .eyebrow{margin-bottom:14px;font-size:14px}
body .contact .contact-actions{margin-top:32px}
body .contact .contact-actions .underlink{color:white}
body .contact .call-detail{font-size:15px;margin:16px 0 0}
body .contact form{border-color:#ffffff35}
body .contact form h3{font-size:28px}
body .bear-top>.project-motion{min-width:0;align-self:center;aspect-ratio:16/9}
body .bear-top>.project-motion video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
body .pfps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body .pfps img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;transform:none}
@media(min-width:1800px){body .section,body .atelier,body .film{padding-left:max(5vw,calc((100vw - 1540px)/2));padding-right:max(5vw,calc((100vw - 1540px)/2))}}
@media(min-width:601px) and (max-width:1100px){body .cinema-strip,body .faenora-art{grid-template-columns:repeat(2,minmax(0,1fr))}body .cinema-strip figure:first-child,body .faenora-art>.project-motion{grid-column:1/-1}body .rates .included{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){body .motion-hero{grid-template-columns:1fr;gap:28px;padding-top:110px}body .motion-hero .copy{max-width:760px}body .motion-hero h1{font-size:clamp(68px,10vw,100px)}body .motion-hero .stage{width:100%;max-width:800px;justify-self:center}body .hero-actions{margin-top:20px}}
@media(max-width:680px){body .motion-hero{display:grid;padding:105px 6vw 36px}body .motion-hero h1{font-size:clamp(54px,13.5vw,84px)}body .motion-hero .stage{margin:0;aspect-ratio:1.02}body .motion-hero .intro{font-size:16px}body .motion-hero .hero-film figcaption{font-size:12px}body .motion-hero .gossip figcaption{padding:6px}body .testimonials .testimonial-grid{grid-template-columns:1fr}body .seven-steps .scope-note{grid-template-columns:1fr;padding:26px;gap:20px}body .scope-note a{grid-column:1}body .rates .included{grid-template-columns:1fr;padding:26px}body .included article{border-top:1px solid #ffffff30;padding-top:18px}body .contact-actions{align-items:flex-start}body .bear-top{grid-template-columns:1fr}body .contact .contact-actions .button{width:auto}body .testimonial-heading h2{font-size:clamp(44px,10vw,64px)}}

/* Let Teddy’s film occupy the same full gallery width as other landscape clips. */
@media(max-width:1100px){
 body .film-bear .bear-top{grid-template-columns:minmax(0,1fr);gap:28px}
 body .film-bear .bear-top>.project-motion{width:100%;max-width:none;justify-self:stretch;grid-column:1/-1;aspect-ratio:16/9}
 body .film-bear .bear-top>.project-motion video{width:100%;height:100%;object-fit:contain}
}

/* Approved Studio notes treatment. */
body .seven-steps .scope-note{display:block;background:#fffaf3;color:#122b25;border:1px solid #ded1c4;box-shadow:0 7px 22px #4225140d;padding:32px 36px;max-width:none}
body .scope-note .note-label{display:table;font-size:14px;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:#a4472e;border-bottom:2px solid #a4472e;padding-bottom:7px;margin:0 0 18px}
body .scope-note h3{font-family:var(--display);font-size:clamp(32px,3.5vw,48px);line-height:1.08;letter-spacing:-.02em;color:#122b25;margin:0 0 18px;text-transform:uppercase}
body .scope-note h3 em{color:#a4472e;font-style:normal}
body .scope-note p{color:#122b25;font-size:17px;line-height:1.65;max-width:65ch}
body .scope-note a{color:#a4472e;margin-top:20px}

/* Seven production stages: an editorial index in the existing Mayo palette. */
body .seven-steps{display:grid;grid-template-columns:1fr;gap:0;margin-top:8px}
body .seven-steps .process-index{display:grid;grid-template-columns:minmax(250px,.78fr) minmax(0,1.22fr);gap:clamp(28px,5vw,76px);align-items:start}
body .process-tabs{display:grid;align-content:start;border-top:1px solid #122B2540}
body .process-tabs button{display:grid;grid-template-columns:42px 1fr 22px;align-items:center;gap:12px;width:100%;min-height:69px;padding:14px 18px;border:0;border-bottom:1px solid #122B2540;background:transparent;color:#122B25;text-align:left;font:600 18px/1.25 'DM Sans',sans-serif;transition:background .2s,color .2s}
body .process-tabs button .process-num{font:700 23px/1 var(--statement);color:#A4472E}
body .process-tabs button .process-arrow{font-size:20px;text-align:right;opacity:0;transform:translateX(-5px);transition:opacity .2s,transform .2s}
body .process-tabs button:hover:not([aria-selected="true"]){background:#122B250C}
body .process-tabs button[aria-selected="true"]{background:#122B25;color:#F6F0E8}
body .process-tabs button[aria-selected="true"] .process-num{color:#F6F0E8}
body .process-tabs button[aria-selected="true"] .process-arrow{opacity:1;transform:translateX(0)}
body .process-tabs button:focus-visible{outline:3px solid #A4472E;outline-offset:-4px;position:relative;z-index:1}
body .process-panel{min-height:380px;padding:36px clamp(24px,4vw,54px);border:1px solid #122B2540;background:#F6F0E8;display:flex;flex-direction:column;justify-content:space-between}
body .process-panel-number{font:700 clamp(60px,7vw,104px)/.85 var(--statement);color:#A4472E}
body .process-panel h3{font:700 clamp(36px,4.3vw,64px)/.98 var(--statement);letter-spacing:-.02em;text-transform:uppercase;color:#122B25;margin:28px 0 22px}
body .process-panel p{font:400 clamp(16px,1.35vw,19px)/1.65 'DM Sans',sans-serif;color:#122B25;max-width:57ch}
body .process-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #122B2540;margin-top:32px;padding-top:15px;font:600 13px/1.4 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#A4472E}
body .process-panel-footer span:last-child{color:#122B25}
@media(max-width:820px){body .seven-steps .process-index{grid-template-columns:1fr;gap:26px}body .process-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:0}body .process-tabs button{min-height:62px;border:1px solid #122B2540;padding:12px;grid-template-columns:31px 1fr 15px;font-size:15px}body .process-tabs button .process-num{font-size:20px}body .process-panel{min-height:290px}}
@media(max-width:390px){body .process-tabs{grid-template-columns:1fr}body .process-tabs button{min-height:51px}body .process-panel{padding:25px 20px}}
body .rates .included{background:transparent;color:#122b25;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;margin:42px 0 0;align-items:stretch;border:0}
body .included>div{grid-column:1/-1;margin:0 0 6px}
body .included h3{color:#122b25;font-size:38px;line-height:1.1;margin:0}
body .included .eyebrow{color:#a4472e;margin:0 0 10px}
body .rates .included article{background:#fffaf3;border:1px solid #ded1c4;border-radius:3px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;gap:0;box-shadow:0 5px 16px #42251406}
body .included article>span{font-family:var(--display);font-size:30px;line-height:1;color:#a4472e;display:block;margin:0 0 12px}
body .included h4{color:#122b25;font-size:19px;line-height:1.3;margin:0 0 10px}
body .included article p{color:#122b25;font-size:16px;line-height:1.6;margin:0}
body .creator-copy .studio-partners{display:block;background:#fffaf3;color:#122b25;border:1px solid #ded1c4;box-shadow:0 7px 22px #00000012;padding:26px 28px;margin:28px 0}
body .studio-partners>span{color:#a4472e;font-family:var(--display);font-size:32px;line-height:1.1;text-transform:uppercase;letter-spacing:0}
body .creator-copy .studio-partners .partner-context{color:#122b25;font-size:14px;margin:8px 0 18px}
body .studio-partners ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding:0;margin:0}
body .studio-partners li{color:#122b25;font-size:16px;line-height:1.4;font-weight:600;padding-top:12px;border-top:1px solid #ded1c4}
body .studio-partners small{display:block;font-weight:400;font-size:14px;line-height:1.5;margin-top:4px;color:#4f5953}
body .testimonial-card{border-top:2px solid #DC8063}
body .testimonial-card .quote-mark{color:#DC8063}
body .testimonial-card figcaption strong{color:#DC8063;font-size:20px;line-height:1.3}
body .testimonial-card figcaption span{color:#fff;font-size:15px;line-height:1.5;margin-top:6px}
body .testimonial-card figcaption small{display:block;font-size:13px;line-height:1.5;color:#ffffffb3;margin-top:6px}
@media(max-width:700px){body .rates .included{grid-template-columns:1fr}body .seven-steps .scope-note{padding:26px}body .rates .included article{padding:24px}body .studio-partners ul{grid-template-columns:1fr}body .creator-copy .studio-partners{padding:24px}}
/* The maker line gets its own place under the promise in the hero. */
body .motion-hero .intro{max-width:41ch;border-left:3px solid #dc8063;padding:3px 0 3px 18px;margin:25px 0 28px;color:#f8f5ed;font-size:17px;line-height:1.6}
body .motion-hero .intro strong{color:#dc8063;font-weight:700}
/* All case studies tell the story first, then explain the brief and execution. */
body .film-story .case-divider,body .film-fences .case-divider,body .bear-bottom .case-divider{margin-top:34px;margin-bottom:12px}
body .film-story p.eyebrow,body .film-fences .case-divider,body .bear-bottom .case-divider{font-size:14px;line-height:1.4;letter-spacing:.12em}
/* The existing artwork is a square. Allow its full, natural composition to define the art column. */
body .creator-art{align-self:center;min-height:0;max-height:none;aspect-ratio:1;background:#fdfaf2;overflow:hidden}
body .creator-art img{position:static;inset:auto;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}
/* Credits belong directly to the surrounding green, with no inset cream panel. */
body .creator-copy .studio-partners{background:transparent;color:#faf1e5;border:0;box-shadow:none;padding:26px 0 0;margin:28px 0 26px;border-top:1px solid #faf1e554}
body .studio-partners>span{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.5;font-weight:700;letter-spacing:.14em;color:#dc8063}
body .studio-partners ul{display:flex;flex-wrap:wrap;gap:8px 22px;margin:16px 0 0;padding:0;list-style:none}
body .studio-partners li{display:inline;color:#faf1e5;border:0;padding:0;font-size:16px;line-height:1.8;font-weight:600}
body .studio-partners li+li::before{content:'·';margin-right:22px;color:#dc8063}
body .studio-partners small{display:inline;color:#f5e8d9;font-size:13px;font-weight:400;margin-left:5px}
/* Keep proof compact while the approved client quotes are still coming in. */
body .testimonials{padding-top:66px;padding-bottom:68px}
body .testimonial-heading{margin-bottom:0}
body .testimonials h2{font-size:clamp(47px,5.4vw,76px)}
body .testimonials .testimonial-grid{margin-top:30px;gap:24px}
body .testimonial-card{background:#1c3930;border:0;border-radius:2px;padding:24px 27px;min-height:245px;display:flex;flex-direction:column;justify-content:space-between}
body .testimonial-card[hidden]{display:none!important}
body .testimonial-card .quote-mark{font-size:45px;line-height:.65;color:#dc8063}
body .testimonial-card blockquote{font-size:clamp(17px,1.5vw,21px);line-height:1.5;margin:15px 0 0}
body .testimonial-card figcaption{margin-top:20px;gap:0}
body .testimonial-card figcaption strong{color:#dc8063}
body .testimonial-controls{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-top:20px;color:#f8f5ed;font-size:14px}
body .testimonial-controls button{width:44px;height:44px;border:1px solid #f8f5ed7a;background:transparent;color:#f8f5ed;font-size:22px;line-height:1;transition:background .2s}
body .testimonial-controls button:hover:not(:disabled){background:#ffffff20}
body .testimonial-controls button:disabled{opacity:.38;cursor:default}
/* The budget explanation is the conclusion of the guarantees, not an orphan paragraph. */
body .rates .included .pricing-detail{grid-column:1/-1;border-top:1px solid #ded1c4;padding:22px 2px 0;margin:2px 0 0;max-width:100%;color:#122b25;font-size:16px;line-height:1.65}
@media(max-width:700px){body .creator-art{width:100%;aspect-ratio:1;min-height:0}body .creator-art img{position:static;width:100%;height:100%;max-height:none;object-fit:cover}body .studio-partners ul{display:block}body .studio-partners li{display:block;margin:8px 0}body .studio-partners li+li::before{content:none}body .testimonial-card{min-height:260px}body .testimonial-controls{justify-content:center}body .rates .included .pricing-detail{padding-top:20px}}

/* Final editorial refinements: one palette and readable selection throughout. */
body ::selection{background:#A4472E;color:#FFF9F1}
body ::-moz-selection{background:#A4472E;color:#FFF9F1}
body .workbench-single{grid-template-columns:minmax(0,1fr);justify-items:center;max-width:1120px;margin:52px auto 64px;padding:0 12px 20px}
body .workbench-single .board-world{grid-column:1;width:min(100%,950px);margin:0;transform:rotate(1deg)}
body .workbench-single img{width:100%;height:auto}
body .seven-steps .process-index{align-items:stretch}
body .process-panel{height:100%}
body .about-words>p:not(.eyebrow):not(.about-lead).about-personal{border-top:1px solid #F6F0E84D;margin-top:25px;padding-top:20px;color:#F6F0E8;font:italic 20px/1.5 Georgia,serif;max-width:38ch}
body .rates .visual-sets .extra-body{grid-template-columns:minmax(0,1fr);gap:28px}
body .rates .visual-sets .extra-body>div:first-child{max-width:68ch}
body .rates .visual-sets .pfps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%;margin:4px 0 0}
body .rates .visual-sets .pfps img{width:100%;aspect-ratio:1;object-fit:cover}
body .creator-copy .studio-partners{display:grid;grid-template-columns:minmax(115px,.55fr) minmax(0,2fr);gap:20px;padding:24px 0 0;border-top:1px solid #F6F0E864}
body .studio-partners>span{color:#F6F0E8;font:700 23px/1.04 var(--statement);letter-spacing:.02em;text-transform:uppercase}
body .studio-partners ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;min-width:0}
body .studio-partners li{display:block;border-bottom:1px solid #F6F0E83B;padding:0 0 12px;margin:0 0 12px;color:#F6F0E8;font-size:16px;line-height:1.45;font-weight:600}
body .studio-partners li+li::before{content:none}
body .rates .included .pricing-detail{grid-column:1/-1;background:#122B25;color:#F6F0E8;border:0;padding:30px 34px;margin:4px 0 0;font-size:17px;line-height:1.65;max-width:none}
body .rates .included .pricing-detail strong{display:block;color:#F6F0E8;font:700 clamp(29px,3vw,43px)/1 var(--statement);text-transform:uppercase;letter-spacing:-.01em;margin-bottom:12px}
@media(min-width:681px) and (max-width:1200px){body .story-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 20px}body .story-strip>span{font-size:clamp(22px,2.5vw,29px)}body .story-strip>a{grid-column:1/-1;justify-self:end;padding:7px 0 0}}
@media(min-width:681px) and (max-width:820px){body .seven-steps .process-index{grid-template-columns:minmax(235px,.85fr) minmax(0,1.15fr);gap:22px}body .process-tabs{grid-template-columns:1fr;gap:0;border-top:1px solid #122B2540}body .process-tabs button{grid-template-columns:30px 1fr 14px;gap:8px;min-height:68px;border:0;border-bottom:1px solid #122B2540;padding:10px 9px;font-size:15px}body .process-panel{min-height:0;padding:27px 25px}body .process-panel h3{font-size:clamp(34px,4.8vw,44px)}body .process-panel-footer{flex-wrap:wrap}}
@media(min-width:601px) and (max-width:950px){body .rates .visual-sets .pfps{grid-template-columns:repeat(2,minmax(0,1fr))}body .rates .visual-sets .pfps img:last-child{grid-column:1/-1;width:calc(50% - 8px);justify-self:center}body .creator-copy .studio-partners{grid-template-columns:1fr;gap:18px}}
@media(max-width:680px){body .rates .visual-sets .pfps{grid-template-columns:1fr;gap:14px}body .rates .visual-sets .pfps img{width:100%;max-width:480px;margin:auto}body .creator-copy .studio-partners{grid-template-columns:1fr;gap:17px}body .studio-partners ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 15px}body .rates .included .pricing-detail{padding:25px 23px}}
@media(max-width:430px){body .studio-partners ul{grid-template-columns:1fr}body .studio-partners li{margin:0 0 11px}body .workbench-single{padding:0;margin:40px auto 50px}}

/* Quiet the secondary offers without shrinking the artwork. */
body .rates .visual-sets h3{font:600 clamp(28px,2.65vw,38px)/1.12 var(--display);letter-spacing:-.035em;text-transform:none;margin-bottom:17px}
body .included h3{font:600 clamp(27px,2.5vw,32px)/1.15 var(--display);letter-spacing:-.035em;text-transform:none}
body .rates .included .pricing-detail{background:#fffaf3;color:#122B25;border:0;border-left:3px solid #A4472E;padding:20px 25px;margin-top:5px;font-size:16px;line-height:1.65}
body .rates .included .pricing-detail strong{color:#122B25;font:700 19px/1.35 'DM Sans',sans-serif;letter-spacing:0;text-transform:none;margin:0 0 6px}

/* One typographic list of collaborations, without rules between the names. */
body .creator-copy .studio-partners{display:block;border:0;padding:0;margin:32px 0 27px;background:transparent;box-shadow:none}
body .studio-partners>span{display:block;color:#F6F0E8;font:700 13px/1.5 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
body .studio-partners ul{display:flex;flex-wrap:wrap;gap:6px 23px;margin:0;padding:0;list-style:none}
body .studio-partners li{display:block;border:0;padding:0;margin:0;color:#F6F0E8;font:600 16px/1.6 'DM Sans',sans-serif}
body .studio-partners li+li::before{content:none}

/* A simple footer with a reserved place for the forthcoming Instagram account. */
body footer .copyright{border:0;padding-top:0;margin-top:0}
body footer .socials{display:flex;flex-wrap:wrap;align-items:center;gap:10px 24px}
body footer .socials a:hover{text-decoration:underline;text-underline-offset:4px}
body footer .social-coming{font-size:14px;color:#122B25;white-space:nowrap}
body footer .social-coming small{display:inline;font-size:12px;color:#655D54;margin-left:4px}
@media(max-width:700px){body .creator-copy .studio-partners ul{display:flex;flex-wrap:wrap;gap:6px 18px}body .creator-copy .studio-partners li{margin:0}body .rates .included .pricing-detail{padding:20px 22px}body footer .socials{width:100%;margin:0}body footer .copyright{width:100%;margin:0}}

/* The portrait offer follows the same type scale as the other service cards. */
body .rates .visual-sets .eyebrow{font:600 12px/1.5 'DM Sans',sans-serif;letter-spacing:.07em;text-transform:uppercase;margin-bottom:18px}
body .rates .visual-sets h3{font:700 30px/1.12 var(--display);letter-spacing:-.025em;text-transform:none;margin-bottom:22px}

/* New Teddy frames keep their cinematic compositions instead of being cropped square. */
body .film-bear .bear-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body .film-bear .bear-pair img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}

/* A compact first look at the original Uggi series. The logo carries its own blue world. */
body .uggi-preview{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(30px,5vw,80px);align-items:center;min-height:640px;padding:78px max(7vw,calc((100vw - 1450px)/2));background:linear-gradient(90deg,rgba(4,10,25,.88) 0%,rgba(4,10,25,.62) 45%,rgba(4,10,25,.86) 100%),linear-gradient(0deg,rgba(4,10,25,.58),rgba(4,10,25,.12)),url('assets/uggi-village-night.webp') center 52%/cover no-repeat;color:#F6F0E8;border-top:1px solid #F6F0E829;border-bottom:1px solid #F6F0E829;overflow:hidden}
body .uggi-preview .eyebrow{color:#F6F0E8;margin-bottom:22px}
body .uggi-title h3{margin:0}
body .uggi-title img{width:100%;height:auto;max-height:330px;object-fit:contain;filter:drop-shadow(0 20px 35px #0007)}
body .uggi-copy{max-width:620px}
body .uggi-copy .uggi-lead{font:700 clamp(72px,6.6vw,106px)/.94 var(--statement);letter-spacing:-.025em;text-transform:uppercase;color:#F6F0E8;margin-bottom:28px}
body .uggi-copy .uggi-lead em{display:block;font:inherit;color:#DC8063;white-space:nowrap}
body .uggi-copy>p:not(.uggi-lead){color:#E2E9E4;font-size:17px;line-height:1.72}
body .uggi-copy>p.uggi-premise{color:#F6F0E8;font-size:20px;line-height:1.5;font-weight:600;max-width:42ch}
body .uggi-copy .underlink{color:#F6F0E8;margin-top:25px}

/* Give the hero enough canvas on panoramic displays; the film cards remain a lead visual, not thumbnails. */
@media(min-width:1600px){
 body header{padding-left:max(5vw,calc((100vw - 2100px)/2));padding-right:max(5vw,calc((100vw - 2100px)/2))}
 body .motion-hero{grid-template-columns:minmax(520px,.82fr) minmax(800px,1.18fr);column-gap:5%;padding-left:max(5vw,calc((100vw - 2100px)/2));padding-right:max(5vw,calc((100vw - 2100px)/2));min-height:760px}
 body .motion-hero h1{font-size:clamp(94px,5.2vw,132px)}
 body .motion-hero .stage{width:100%;max-width:1080px;justify-self:end}
}

/* Three projects, three stages: character, world and storyboard. */
body .workbench-mixed{max-width:1240px;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:32px 36px;margin:58px auto 68px;align-items:start}
body .workbench-mixed figure{max-width:none;width:100%;padding:13px 13px 17px}
body .workbench-mixed .board-character{transform:rotate(-1.2deg)}
body .workbench-mixed .board-world{transform:rotate(1.2deg);margin-top:34px}
body .workbench-mixed .board-story{grid-column:1/-1;width:min(94%,1100px);max-width:1100px;justify-self:center;transform:rotate(-.5deg);margin:0}
body .workbench-mixed img{width:100%;height:auto;max-height:650px;object-fit:contain;background:#FFFCF4}
body .workbench-mixed .board-story img{max-height:none}
body .workbench-mixed figcaption{font-size:14px;padding-top:12px}
@media(max-width:900px){body .uggi-preview{grid-template-columns:1fr;gap:30px;min-height:0;padding:62px 7vw;background-position:58% center}body .uggi-title{max-width:620px;margin:auto}body .uggi-copy{max-width:680px}body .workbench-mixed{grid-template-columns:1fr;max-width:720px;gap:27px}body .workbench-mixed .board-character,body .workbench-mixed .board-world,body .workbench-mixed .board-story{grid-column:1;width:100%;margin:0;transform:none}body .workbench-mixed img{max-height:none}}
@media(max-width:600px){body .film-bear .bear-pair{grid-template-columns:1fr;gap:16px}body .uggi-preview{padding:50px 6vw}body .uggi-copy .uggi-lead{font-size:clamp(44px,12vw,68px)}body .uggi-copy>p:not(.uggi-lead){font-size:16px}body .workbench-mixed{margin:40px auto 52px}}

/* References are waiting for client approval; keep the prepared layout for later. */
body #testimonials{display:none!important}

/* Selected work uses one heading scale and one numbered caption rhythm. */
body .film .film-heading h3,
body .film .bear-top h3,
body .film .faenora-title h3,
body .uggi-copy .uggi-lead{font-size:clamp(52px,6vw,94px);line-height:.98}
body .film .film-heading .eyebrow,
body .film .fences-layout>.eyebrow,
body .film .fences-layout>div>.eyebrow:first-child,
body .film .bear-top .eyebrow,
body .film .faenora-title>.eyebrow,
body .uggi-title>.eyebrow{font:600 12px/1.6 'DM Sans',sans-serif;letter-spacing:.11em;text-transform:uppercase;margin-bottom:22px}
@media(max-width:760px){
 body .film .film-heading h3,
 body .film .bear-top h3,
 body .film .faenora-title h3,
 body .uggi-copy .uggi-lead{font-size:clamp(39px,10vw,64px);line-height:1.02}
}

/* One type scale for the two large statements, including tablet and wide screens. */
body .motion-hero h1,body .work-heading h2{font-size:clamp(64px,6.5vw,100px)}
@media(max-width:1000px){body .motion-hero h1,body .work-heading h2{font-size:clamp(68px,10vw,100px)}}
@media(max-width:680px){body .motion-hero h1,body .work-heading h2{font-size:clamp(54px,13.5vw,84px)}}

/* November 2026 launch refinements: positioning, showreel and flagship film. */
body .showreel{display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:5vw;align-items:center;padding:78px max(5vw,calc((100vw - 1500px)/2));background:#122b25;color:#fff;border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26}
body .showreel-copy{max-width:410px}
body .showreel .eyebrow{color:#dc8063;margin-bottom:18px}
body .showreel h3{margin:0;font-family:var(--statement);font-size:clamp(52px,5.6vw,84px);font-weight:700;letter-spacing:-.025em;line-height:.92;text-transform:uppercase}
body .showreel h3 em{font:inherit;color:#dc8063}
body .showreel-copy>p:not(.eyebrow):not(.showreel-sound){margin:25px 0 0;color:#f8f5ed;font-size:17px;line-height:1.65}
body .showreel .showreel-sound{display:inline-block;margin:24px 0 0;padding-top:14px;border-top:1px solid #ffffff35;color:#cdd7d1;font-size:13px;letter-spacing:.04em}
body .showreel-player{position:relative;overflow:hidden;aspect-ratio:16/9;background:#050806;box-shadow:0 22px 55px #0006}
body .showreel-player:before{content:"SHOWREEL 2026";position:absolute;top:14px;left:14px;z-index:1;padding:7px 10px;background:#122b25e8;color:#fff;font-size:11px;font-weight:700;letter-spacing:.12em;pointer-events:none}
body .showreel-player.is-playing:before{display:none}
body .showreel-player video{display:block;width:100%;height:100%;object-fit:cover;background:#050806}
body .showreel-player .showreel-launch{position:absolute;inset:0;z-index:2;display:block;width:100%;padding:0;border:0;background:linear-gradient(0deg,#050806b8,transparent 45%);color:#fff;cursor:pointer;text-align:left;transition:background .25s ease}
body .showreel-player .showreel-launch:hover{background:linear-gradient(0deg,#050806d1,transparent 58%)}
body .showreel-player.has-started .showreel-launch{display:none}
body .showreel-play{position:absolute;z-index:2;left:50%;top:50%;display:grid;width:74px;height:74px;place-items:center;border:1px solid #ffffffb8;border-radius:50%;background:#122b25e8;transform:translate(-50%,-50%);transition:transform .2s ease,background .2s ease}
body .showreel-play:after{content:"";display:block;width:0;height:0;margin-left:5px;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:16px solid #fff}
body .showreel-launch:hover .showreel-play{background:#dc8063;transform:translate(-50%,-50%) scale(1.07)}
body .showreel-watch{position:absolute;z-index:2;right:20px;bottom:18px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
body .showreel-launch:focus-visible{outline:3px solid #dc8063;outline-offset:-3px}
body .showreel-controls{position:absolute;left:0;right:0;bottom:0;z-index:3;display:grid;grid-template-columns:auto minmax(90px,1fr) auto auto auto;gap:12px;align-items:center;padding:13px 15px;background:linear-gradient(0deg,#050806f2,#050806b8 70%,transparent);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease}
body .showreel-player.has-started .showreel-controls,body .showreel-player:hover .showreel-controls,body .showreel-player:focus-within .showreel-controls{opacity:1;pointer-events:auto;transform:none}
body .showreel-controls button{padding:4px;border:0;background:transparent;color:#fff;font:700 11px/1.2 'DM Sans',sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
body .showreel-controls button:hover{color:#dc8063}
body .video-progress{width:100%;accent-color:#dc8063;cursor:pointer}
body .video-time{color:#fff;font:500 11px/1.2 'DM Sans',sans-serif;white-space:nowrap}
body .showreel-youtube{position:absolute;top:15px;right:15px;z-index:3;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #ffffff80}
body .film-deer .film-heading{max-width:760px}
body .film-deer .film-title-logo{display:block;width:min(100%,590px);height:auto;margin:12px 0 8px}
body .film-deer .film-heading>p:last-child{max-width:47ch}
body .film-foot-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 28px;text-align:right}
body .film-foot-links a:first-child{color:#fff;font-weight:700}

@media(max-width:900px){
 body .showreel{grid-template-columns:1fr;gap:34px;padding:58px 6vw}
 body .showreel-copy{max-width:680px}
 body .showreel h3{font-size:clamp(52px,9vw,78px)}
 body .film-deer .film-title-logo{width:min(92%,520px)}
}
@media(max-width:680px){
 body .showreel{padding:48px 6vw;gap:28px}
 body .showreel h3{font-size:clamp(48px,14vw,68px)}
 body .showreel-copy>p:not(.eyebrow):not(.showreel-sound){font-size:16px}
 body .showreel-player:before{top:9px;left:9px;font-size:9px}
 body .showreel-play{width:58px;height:58px;font-size:19px}
 body .showreel-watch{right:12px;bottom:10px;font-size:10px}
 body .showreel-controls{grid-template-columns:auto minmax(60px,1fr) auto;gap:8px;padding:10px}
 body .video-mute,body .video-fullscreen{display:none}
 body .showreel-youtube{top:10px;right:10px;font-size:9px}
 body .film-deer .film-title-logo{width:min(96%,440px);margin:8px 0 5px}
 body .film-foot-links{justify-content:flex-start;text-align:left}
 body .film-foot-links a{margin-top:12px;margin-right:20px}
}

/* Site navigation follows the client's path through the page. */
body header .site-nav{display:flex;align-items:center;gap:clamp(18px,2.3vw,36px)}
body header .site-nav a{position:relative;white-space:nowrap}
body header .site-nav a::after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:#DC8063;transition:right .2s ease}
body header .site-nav a:hover::after,body header .site-nav a:focus-visible::after{right:0}
body header .nav-toggle{display:none;border:0;background:transparent;color:#F6F0E8;font:600 14px/1 'DM Sans',sans-serif;padding:10px 0;align-items:center;gap:8px}
body header .nav-toggle [aria-hidden]{color:#DC8063;font-size:21px;font-weight:400;line-height:1}
@media(max-width:760px){
 body header{z-index:50;padding-left:6vw;padding-right:6vw;gap:14px}
 body header .brand{margin-right:auto}
 body header .brand img{width:94px}
 body header .nav-toggle{display:inline-flex;order:2}
 body header .header-cta{order:3;font-size:12px;padding:10px 12px;gap:7px}
 body header .site-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:12px 6vw 22px;background:#122B25;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff35;box-shadow:0 18px 35px #071C1740;grid-template-columns:1fr 1fr;gap:0;z-index:60}
 body header .site-nav.is-open{display:grid}
 body header .site-nav a{padding:15px 0;border-bottom:1px solid #ffffff20;font-size:17px}
 body header .site-nav a:nth-child(odd){padding-right:18px}
 body header .site-nav a:nth-child(even){padding-left:18px;border-left:1px solid #ffffff20}
 body header .site-nav a::after{display:none}
}
@media(max-width:390px){
 body header{gap:10px}
 body header .brand img{width:82px}
 body header .header-cta{font-size:11px;padding:9px 10px}
}

/* Editorial notes and visual sets share one sentence-case display treatment. */
body .scope-note h3,body .rates .visual-sets h3{font:700 30px/1.12 var(--display);letter-spacing:-.025em;text-transform:none}
body .scope-note h3 em{font:inherit;color:#A4472E}

/* Uggi's case number belongs to the copy column; only the final word is copper. */
body .uggi-copy .eyebrow{margin:0 0 22px;color:#F6F0E8}
body .uggi-copy .uggi-lead-line{display:block;white-space:nowrap}
body .uggi-copy .uggi-lead em{display:inline;font:inherit;color:#DC8063;white-space:inherit}
