:root {
  color-scheme: light;
  --ink:#14132a;
  --muted:#514b68;
  --paper:#faf8ff;
  --lavender:#eee7ff;
  --dark:#161333;
  --line:#d6cbed;
  --accent:#4e28ce;
  --gradient:linear-gradient(100deg,#0068c9 0%,#3443ec 49%,#7414c8 98%);
  --glow:linear-gradient(105deg,#15dcf4 0%,#3163fc 45%,#ab32f1 100%);
  font-family: "Segoe UI", system-ui, sans-serif;
  color:var(--ink);
  background:var(--paper);
  scroll-behavior:smooth;
  scroll-padding-top:92px;
}
* {box-sizing:border-box}
body,figure,p,h1,h2,h3,h4,dl,dd,ul,blockquote {margin:0}
body {overflow-wrap:anywhere}
img {display:block;max-width:100%;height:auto}
a {color:inherit}
button,input {font:inherit}
button {cursor:pointer}
[hidden] {display:none!important}
:focus-visible {outline:3px solid #1266db;outline-offset:5px}
.dark :focus-visible {outline-color:#68e7ff}
.wrap {width:min(100% - 104px,1280px);margin-inline:auto}
.skip {position:fixed;z-index:10;top:8px;left:8px;padding:10px 14px;background:white;transform:translateY(-150%)}
.skip:focus {transform:translateY(0)}
.header {position:sticky;top:0;z-index:5;background:#f9f6fff2;border-bottom:1px solid #dcd4ef;backdrop-filter:blur(14px)}
.header-inner {min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand {display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-size:.83rem;font-weight:900;line-height:1.02;letter-spacing:.01em;text-transform:uppercase}
.brand img {border-radius:50%;width:46px;height:46px;object-fit:contain}
.main-nav {display:flex;align-items:center;gap:clamp(16px,3vw,44px);font-size:.91rem;font-weight:650}
.main-nav a {text-decoration:none}
.main-nav a:hover,.quiet-link:hover {color:var(--accent);text-decoration:underline;text-underline-offset:5px}
.nav-cta {padding:8px 14px;border:1px solid #77708e;border-radius:999px}
.menu-toggle {display:none}
h1,h2,h3,h4 {line-height:1.015;letter-spacing:-.053em;font-weight:850;text-wrap:balance}
h1 {font-size:clamp(3rem,5.3vw,5.35rem)}
h2 {font-size:clamp(2.25rem,4.6vw,4.7rem)}
h3 {font-size:clamp(1.95rem,3.7vw,3.65rem)}
h4 {font-size:clamp(1.7rem,3vw,2.65rem)}
em {font-style:normal;color:#4137ce;background:var(--gradient);background-clip:text;-webkit-text-fill-color:transparent}
p,dd {line-height:1.55}
.hero {position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 23% 63%,#f5efff 0%,transparent 49%),radial-gradient(ellipse at 76% 48%,#eadcff 0%,transparent 49%),linear-gradient(123deg,#e7dcff,#e0d7fa 58%,#ccadf3)}
.hero::before {content:"";position:absolute;z-index:-1;width:53%;aspect-ratio:1.55;left:-28%;bottom:-50%;border-radius:50%;background:var(--glow)}
.hero-inner {min-height:clamp(580px,52vw,730px);position:relative;display:grid;grid-template-columns:47% 53%;align-items:center;padding-block:62px 115px}
.hero-orb {position:absolute;right:-98px;top:-152px;width:355px;aspect-ratio:1;border-radius:50%;background:var(--glow);opacity:.92;z-index:-1}
.hero-copy {z-index:1}
.hero-copy h1 {text-wrap:initial}
.hero-copy>p {max-width:29em;margin-top:22px;font-size:clamp(1.02rem,1.6vw,1.33rem);color:#29243e}
.hero-actions {display:flex;align-items:center;gap:21px;flex-wrap:wrap;margin-top:25px}
.button {display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:47px;padding:10px 20px;border:0;border-radius:11px;background:var(--gradient);color:white;text-decoration:none;font-weight:750;box-shadow:0 10px 26px #342ee52c}
.button:not(:disabled):hover {filter:brightness(1.13)}
.quiet-link {font-weight:720;text-underline-offset:5px}
.hero-copy p.location {margin-top:17px;font-size:.86rem;font-weight:740}
.hero-art {position:relative;margin-inline:-5% -8%;isolation:isolate}
.hero-art::before {content:"";position:absolute;z-index:-1;inset:-25% 19% 8%;border:1px solid #8b5ae362;border-radius:50%;transform:translateY(8%)}
.hero-art::after {content:"";position:absolute;z-index:-1;inset:82% 6% 1% 7%;background:#27104c72;filter:blur(18px);border-radius:50%}
.hero-art svg {display:block;width:100%;overflow:visible;filter:drop-shadow(0 3px 4px #20103135)}
.hero-wave {position:absolute;bottom:-1px;width:100%;height:clamp(48px,8vw,116px);display:block;color:var(--paper)}
.kicker {display:flex;align-items:center;gap:10px;font-weight:800;font-size:.73rem;letter-spacing:.145em;text-transform:uppercase;line-height:1.3;margin-bottom:15px}
.kicker > span:not(.word-piece),.studio-caption span {display:inline-block;width:7px;height:20px;flex:none;background:var(--glow);border-radius:999px}
.services {padding-top:43px}
.intro>p:last-child {margin-top:17px;color:var(--muted);font-size:1.1rem}
.service-nav {display:flex;flex-wrap:wrap;gap:8px;margin:27px 0 0}
.service-nav a {display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid #cdc0e8;border-radius:100px;text-decoration:none;font-size:.86rem;font-weight:700;background:#fff}
.service-nav a:hover,.service-nav a[aria-current="location"] {border-color:var(--accent);background:#eae0ff;color:#35209b}
.feature {display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(30px,6vw,96px);align-items:center;padding-block:85px}
.feature-copy p:not(.kicker),.case-head p:not(.kicker),.print-social p:not(.kicker),.agency-copy>p:not(.kicker) {color:var(--muted);font-size:clamp(1rem,1.5vw,1.15rem);margin-top:18px;max-width:42ch}
.mascot-scenes {position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;align-items:center;gap:12px;aspect-ratio:1.534;padding-block:12px 20px}
.mascot-scenes::before {content:"";position:absolute;inset:13% -4% 1% -7%;background:radial-gradient(ellipse at 33% 60%,#bd9bfc,transparent 65%),radial-gradient(ellipse at 81% 55%,#88e5f6,transparent 67%);filter:blur(28px);z-index:-1}
.scene {position:relative;display:block;overflow:hidden;isolation:isolate;background:#331f32;box-shadow:0 14px 22px #39236b25;min-height:0}
.scene img {width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.scene:hover img {transform:scale(1.05)}
.scene-main,.scene-top,.scene-bottom {aspect-ratio:1;border-radius:22px;min-width:0}
.scene-main {grid-row:auto;margin:0}
.scene-top {align-self:start;margin-top:12px}
.scene-bottom {align-self:end;margin-bottom:12px}
.scene-top img,.scene-bottom img {object-fit:cover;object-position:center}
.scene:hover img {transform:none}
.scene span {position:absolute;bottom:12%;left:10%;padding:6px 10px;border-radius:999px;background:#17122be8;color:#fff;font-size:.76rem;font-weight:720}
.scene span b {margin-left:4px}
.band {position:relative;isolation:isolate;padding-block:76px;background:linear-gradient(139deg,#eee5ff,#f8f1ff 38%,#e9dcfd)}
.band::before,.band::after {content:"";position:absolute;left:0;right:0;height:42px;background:var(--paper);z-index:-1}
.band::before {top:-1px;border-radius:0 0 65% 42% / 0 0 100% 75%}
.band::after {bottom:-1px;border-radius:68% 36% 0 0 / 90% 65% 0 0}
.case-head {display:flex;justify-content:space-between;align-items:center;gap:24px}
.case-head>div {max-width:750px}
.case-head img {width:clamp(90px,16vw,190px);flex:none;filter:drop-shadow(0 15px 18px #33101e32)}
.chapa-stage {margin-top:19px;display:grid;grid-template-columns:1.16fr .88fr .58fr .8fr .78fr;align-items:end;gap:clamp(10px,2.5vw,38px);position:relative;padding:35px 22px 15px;border-radius:50% 34% 35% 44% / 21% 16% 18% 20%;background:radial-gradient(ellipse at 50% 70%,#fff4ff,transparent 65%),linear-gradient(165deg,#eee2fe,#ddc6fb)}
.chapa-stage a {display:grid;justify-items:center;align-content:end;gap:8px;text-align:center;text-decoration:none;font-size:.8rem;font-weight:700;min-width:0}
.chapa-stage a img {width:100%;max-height:285px;object-fit:contain;filter:drop-shadow(0 10px 12px #47235237);transition:transform .25s ease}
.chapa-stage a:hover img {transform:translateY(-6px)}
.chapa-stage .box {padding-top:30%}
.chapa-stage .business-card {gap:11px}
.palette {display:flex;align-items:center;flex-wrap:wrap;gap:12px 22px;margin-top:18px;font-size:.83rem}
.palette span {display:inline-flex;align-items:center;gap:7px;font-weight:650}
.palette i {width:15px;height:15px;border-radius:50%;border:1px solid #251a3c49}
.red {background:#b90000}.white {background:white}.grey {background:#858585}
.palette small {color:var(--muted);font-size:.8rem;margin-left:auto}
.print-social {display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(26px,5vw,82px);padding-block:78px 96px}
.print-social h3 {font-size:clamp(1.95rem,3.3vw,3.2rem)}
.social-stage {margin-top:24px;display:grid;grid-template-columns:.72fr 1.15fr .88fr;gap:12px;align-items:end}
.social-stage a {min-width:0;text-decoration:none;display:grid;gap:10px;font-size:.8rem;font-weight:740;text-align:center}
.social-stage a:hover,.print-stage a:hover,.portraits a:hover {color:var(--accent)}
.social-profile img {width:100%;border-radius:50%;box-shadow:inset 0 -4px #000,0 7px 0 #16364a,0 14px 16px #19123c45}
.social-profile>span {margin-top:6px}
.social-feed {grid-template-rows:auto 1fr auto;row-gap:0!important}
.post {display:flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:4px;background:white;border:1px solid #e2d9ef;border-radius:10px 10px 0 0;font-size:clamp(.57rem,1vw,.75rem)}
.post-profile {width:22px;height:22px;border-radius:50%}
.feed-art {border-radius:0 0 10px 10px;width:100%}
.social-label {margin-top:10px}
.iphone {position:relative;display:block;border:5px solid #161522;border-radius:clamp(14px,2.3vw,30px);overflow:hidden;background:#161522;box-shadow:0 0 0 1px #6b617b,0 13px 17px #25163b36;padding-top:8%}
.iphone::before {content:"";position:absolute;top:1.5%;left:36%;width:28%;height:2.8%;border-radius:999px;background:#25243a}
.iphone img {width:100%;border-radius:2px 2px 8px 8px}
.print-stage {position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:12px;margin-top:24px}
.print-stage a {display:grid;align-content:start;gap:7px;text-decoration:none;font-size:.77rem;font-weight:710}
.print-stage a:first-child {grid-column:1/-1}
.print-stage img {width:100%;height:auto;max-height:205px;object-fit:cover;border-radius:12px;box-shadow:0 7px 15px #32124c27}
.print-stage a:not(:first-child) img {height:clamp(95px,11vw,153px)}
.dark {background:var(--dark);color:#fff}
.video-band {position:relative;isolation:isolate;padding:75px 0 88px;border-radius:14% 5% 12% 4% / 5% 4% 7% 6%;background:radial-gradient(ellipse at 96% 95%,#452286,transparent 63%),radial-gradient(ellipse at 5% -40%,#32468c,transparent 65%),var(--dark)}
.video-intro {display:grid;grid-template-columns:1fr .8fr;gap:32px;align-items:end}
.video-intro>p {color:#e1d8fa;max-width:47ch}
.video-intro strong {color:#8cefff}
.video-covers {margin-top:30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,2.6vw,33px)}
.video-covers img {width:100%;aspect-ratio:1.58;object-fit:cover;border-radius:16px;border:1px solid #ffffff35}
.video-covers figcaption {padding:10px 0 0;font-size:.89rem;font-weight:720}
.web-demo img {width:100%;border-radius:21px 32% 19px 15% / 21px 20% 19px 14%;box-shadow:0 18px 36px #2d21542b}
.web-demo figcaption {margin-top:12px;color:var(--muted);font-size:.84rem}
.photo-band {background:linear-gradient(150deg,#ebdfff,#f7f1ff 45%,#e9e3ff)}
.photo-feature {padding:0 0 58px}
.comparison {--split:calc(14px + (100% - 28px)*var(--fraction,.5));aspect-ratio:3/2;position:relative;isolation:isolate;overflow:hidden;border-radius:20px;background:#bfa582}
.comparison img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo-before {clip-path:inset(0 calc(100% - var(--clip,var(--split))) 0 0)}
.before-label,.after-label {position:absolute;bottom:14px;padding:5px 10px;background:#1b1725ed;border-radius:999px;color:white;font-size:.77rem;font-weight:720}
.before-label {left:14px}.after-label {right:14px}
.compare-line {position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:#fff;box-shadow:0 0 8px #0006}
.compare-line span {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;height:44px;width:44px;background:white;color:#1a1531;display:grid;place-content:center;font-size:1.2rem;font-weight:800;box-shadow:0 4px 20px #0005}
.comparison input {position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y;appearance:none;background:transparent}
.comparison input::-webkit-slider-thumb {appearance:none;width:28px;height:44px}
.comparison input::-moz-range-thumb {width:28px;height:44px;border:0}
.comparison:focus-within {outline:3px solid #1266db;outline-offset:5px}
.comparison[data-edge="before"] .before-label,.comparison[data-edge="after"] .after-label {visibility:hidden}
.hint {margin-top:12px;color:var(--muted);font-size:.85rem}
.sessions {border-top:1px solid #cdbde7;padding-top:28px}
.sessions p {color:var(--muted);margin-top:8px}
.portraits {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,3vw,34px);margin-top:21px}
.portraits a {text-decoration:none;display:grid;gap:3px}
.portraits img {width:100%;height:auto;aspect-ratio:3/3.6;object-fit:cover;object-position:center 37%;border-radius:48% 48% 16px 16px / 23% 23% 16px 16px;background:#e0d0ea;margin-bottom:6px}
.portraits span {font-weight:780}
.portraits small {color:var(--muted);font-size:.81rem}
.text-art {display:inline-flex;align-items:center;gap:10px;text-underline-offset:4px;font-size:.86rem;font-weight:650;margin-top:23px}
.text-art img {width:42px;height:42px;object-fit:cover;border-radius:50%}
.agency {padding-block:90px 99px;overflow:hidden;background:radial-gradient(ellipse at 91% 45%,#e0c6ff,transparent 66%),var(--paper)}
.agency-inner {display:grid;grid-template-columns:.9fr 1.1fr;gap:45px;align-items:center}
.roles {display:grid;grid-template-columns:1fr 1fr;gap:14px 17px;margin-top:23px}
.roles>div {border-top:1px solid #c6b2e9;padding-top:9px}
.roles dt {font-weight:780;margin-bottom:3px}
.roles dd {color:var(--muted);font-size:.87rem}
.studio {position:relative;isolation:isolate;aspect-ratio:1.15;perspective:1000px}
.studio-orbit {position:absolute;inset:5% 1% 11%;background:radial-gradient(ellipse at 46% 60%,#c5a1ec,transparent 72%),linear-gradient(125deg,#eddefa,#ceb3fa);border-radius:50%;transform:rotate(-15deg);box-shadow:0 0 0 1px #d0adf8,0 0 0 25px #cda5fb30}
.laptop {position:absolute;top:10%;left:27%;width:57%;transform:rotate(10deg) skewX(-4deg);filter:drop-shadow(0 16px 12px #28144550)}
.screen {aspect-ratio:1.6;border:8px solid #232134;border-radius:11px 11px 4px 4px;background:#161726;display:grid;grid-template-columns:10% 1fr 13%;gap:4px;padding:7px}
.screen i {background:repeating-linear-gradient(180deg,#33374b 0 5px,#1f2232 5px 11px);border-radius:3px}
.design-art {display:grid;place-items:center;background:radial-gradient(circle at 25% 73%,#08dce3,transparent 39%),linear-gradient(125deg,#1f1672,#a936ec 68%,#ef8ded);overflow:hidden}
.design-art span {display:block;width:63%;aspect-ratio:1;border-radius:49% 70% 58% 35%;background:radial-gradient(ellipse at 30% 70%,#4af0ff,#254af2 42%,#9c18e0 65%,#ed85ff 86%);transform:rotate(-27deg);box-shadow:13px 10px 24px #291b7b97}
.keyboard {height:46px;position:relative;margin-inline:-7%;background:linear-gradient(#9993b5,#d1c9e8 83%,#767187 84%,#b4aacd);clip-path:polygon(6% 0,94% 0,100% 86%,98% 100%,2% 100%,0 86%);border-radius:3px 3px 14px 14px}
.keyboard::before {content:"";position:absolute;inset:3px 17% 48%;background:repeating-linear-gradient(90deg,#3e384a 0 6px,#a19aaf 6px 8px);border-radius:3px}
.keyboard::after {content:"";position:absolute;inset:58% 39% 10%;background:#afa7c6;border-radius:3px}
.notebook {position:absolute;top:45%;left:9%;width:32%;aspect-ratio:.77;transform:rotate(-24deg) skewY(9deg);border-radius:8px 12px 12px 8px;border-left:8px solid #302050;border-bottom:7px solid #9d8fb2;box-shadow:0 20px 24px #31175569;background:radial-gradient(ellipse at 3% 97%,#13bde9 0 25%,transparent 26%),radial-gradient(ellipse at 101% 91%,#8232df 0 36%,transparent 37%),repeating-radial-gradient(circle at 96% 8%,transparent 0 10px,#5f3fc41f 10px 11px),#eee5ff;padding:12% 6%}
.notebook img {width:33%;border-radius:50%;margin-bottom:7px}
.notebook span {display:block;font-size:clamp(.56rem,1.4vw,1.2rem);font-weight:850;line-height:1.03;text-transform:uppercase}
.notebook i {position:absolute;top:0;bottom:-6%;right:13%;width:5%;background:#6334a7;box-shadow:2px 0 3px #27124761}
.tablet {position:absolute;top:51%;right:5%;width:48%;aspect-ratio:1.53;background:#252235;border:7px solid #191727;border-radius:15px;transform:rotate(12deg) skew(-8deg);box-shadow:0 15px 28px #24134075,0 2px 0 1px #aaa0be}
.tablet-screen {height:100%;padding:5%;display:grid;grid-template-rows:1.28fr 1fr;gap:8%;background:#2d2a3b;border-radius:8px}
.monitor {display:grid;grid-template-columns:1fr 2.2fr;gap:5%}
.monitor div {border-radius:4px;background:radial-gradient(ellipse at 10% 105%,#25ddeb 0 33%,transparent 34%),radial-gradient(ellipse at 65% 93%,#7831e9 0 36%,transparent 37%),linear-gradient(130deg,#2924ab,#e085f0)}
.monitor div:first-child {background:repeating-linear-gradient(160deg,#242259 0 8px,#936ceb 8px 13px,#2d2a3b 13px 17px)}
.timeline {display:grid;gap:4px;background:repeating-linear-gradient(90deg,#403d50 0 1px,transparent 1px 12px)}
.timeline i {width:74%;background:#8250ef;border-radius:2px}
.timeline i:nth-child(2) {width:45%;margin-left:18%;background:#2d8fe9}
.timeline i:nth-child(3) {width:58%;margin-left:37%;background:#20c9bc}
.studio-caption {position:absolute;bottom:-3%;right:4%;font-size:.71rem;font-weight:760;letter-spacing:.11em;text-transform:uppercase;display:flex;align-items:center;gap:8px}
.studio-caption span {height:12px;width:5px}
.testimonials {padding:70px 0 76px;background:#f1eaff}
.reviews-head {display:flex;align-items:end;justify-content:space-between;gap:20px}
.carousel-controls {display:flex;gap:8px;flex:none}
.carousel-controls button,.dialog-head button {height:44px;width:44px;border-radius:50%;border:1px solid #b9a9da;background:#fff;color:var(--ink);font-size:1.2rem;font-weight:750}
.carousel-controls button:hover,.dialog-head button:hover {background:#e8dcff}
.carousel-controls button:disabled {opacity:.46;cursor:default}
.quotes {list-style:none;padding:8px 2px 16px;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);gap:16px;margin-top:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:#7453ae #e9dff7}
.quote {scroll-snap-align:start;min-width:0;padding:18px 17px 20px;border-radius:15px;background:#fff;border:1px solid #ded1f4;display:flex;flex-direction:column;align-items:start}
.quote-mark {color:#6333b4;font-family:Georgia,serif;font-size:3.3rem;height:38px;line-height:1}
.quote blockquote {font-size:.98rem;line-height:1.55;margin-bottom:19px}
.author {margin-top:auto;display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:750;max-width:100%}
.author img {width:44px;height:44px;object-fit:cover;border-radius:50%;border:2px solid #e5d7fb;flex:none}
.contact {padding:64px 0;background:radial-gradient(ellipse at 77% 110%,#4a2289,transparent 69%),var(--dark)}
.contact-inner {display:grid;grid-template-columns:1.15fr .7fr;align-items:center;gap:38px}
.contact em {background:var(--glow);background-clip:text}
.contact-info {display:grid;gap:11px;justify-items:start;border-left:1px solid #ffffff48;padding-left:28px}
.contact-info p {font-weight:680}
.pending:disabled {background:#ded6ed;color:#312743;cursor:default;box-shadow:none}
.contact-info small {color:#e4dafa;font-size:.83rem}
.footer {display:flex;align-items:center;justify-content:space-between;gap:18px;padding-block:24px;font-size:.83rem}
.footer p {color:var(--muted)}
.footer>a:last-child {font-weight:700;text-underline-offset:4px}
dialog {width:min(92vw,960px);max-height:94dvh;border:1px solid #dac9f5;border-radius:16px;padding:0 14px 14px;background:#f9f6ff;color:var(--ink)}
dialog::backdrop {background:#130d27d9}
.dialog-head {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;font-weight:750}
.dialog-head button {flex:none}
dialog>img {margin:auto;max-height:calc(94dvh - 87px);object-fit:contain}
html:has(dialog[open]) {overflow:hidden}
@media (prefers-reduced-motion:no-preference) {
  .reveal.queued {opacity:0;translate:0 20px}
  .reveal {transition:opacity .6s ease,translate .6s cubic-bezier(.2,.8,.2,1)}
  .scene-top.reveal {transition-delay:70ms}.scene-bottom.reveal {transition-delay:130ms}
}
@media (max-width:1000px) {
  .wrap {width:calc(100% - 62px)}
  .hero-inner {min-height:525px}
  h1 {font-size:clamp(2.8rem,5.65vw,4.4rem)}
  .feature {gap:38px}
  .print-social {gap:26px}
  .quotes {grid-auto-columns:calc((100% - 20px)/2)}
}
@media (max-width:730px) {
  :root {scroll-padding-top:74px}
  .wrap {width:calc(100% - 38px)}
  .header-inner {min-height:62px;gap:12px}
  .brand img {width:38px;height:38px}
  .brand {font-size:.76rem}
  .header.enhanced .menu-toggle {display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 11px;border-radius:999px;border:1px solid #cec1e6;background:white;font-size:.83rem;font-weight:700;color:var(--ink)}
  .main-nav {gap:10px;flex-wrap:wrap;font-size:.75rem}
  .enhanced .main-nav {display:none;position:absolute;top:100%;left:0;right:0;background:#f9f6ff;border-bottom:1px solid #d6c8f1;padding:8px 19px 16px;box-shadow:0 12px 16px #1a103321}
  .enhanced .main-nav.open {display:grid}
  .enhanced .main-nav a {min-height:44px;display:flex;align-items:center;gap:7px;padding:7px 12px;font-size:.95rem}
  .hero-inner {display:flex;flex-direction:column;align-items:stretch;padding-block:42px 56px;min-height:auto}
  h1 {font-size:clamp(2.45rem,8.9vw,4.15rem);max-width:13ch}
  .hero-copy>p {margin-top:16px;font-size:1rem}
  .hero-actions {margin-top:18px;gap:16px}
  .hero-copy p.location {margin-top:13px}
  .hero-orb {width:230px;right:-138px;top:-108px}
  .hero-art {width:min(100%,520px);margin:23px auto 0}
  .hero-art::before {inset:-8% 15% 10%}
  .services {padding-top:32px}
  .intro>p:last-child {font-size:1rem;margin-top:14px}
  .service-nav {gap:6px;margin-top:19px}
  .service-nav a {padding-inline:12px;font-size:.79rem}
  .feature {grid-template-columns:1fr;gap:23px;padding-block:49px}
  .feature-copy p:not(.kicker),.case-head p:not(.kicker),.print-social p:not(.kicker),.agency-copy>p:not(.kicker) {margin-top:12px}
  .mascot-scenes {gap:7px;padding:3px 0 12px;aspect-ratio:1.544}
  .scene-main,.scene-top,.scene-bottom {border-radius:12px}
  .scene-top {margin-top:5px}
  .scene-bottom {margin-bottom:5px}
  .scene span {bottom:5%;left:4%;font-size:.57rem;padding:4px 5px}
  .scene span {font-size:.68rem;padding:5px 7px;left:8%}
  .band {padding-block:55px}
  .band::before,.band::after {height:27px}
  .case-head {gap:11px}
  .case-head img {width:clamp(67px,20vw,140px)}
  .chapa-stage {grid-template-columns:1fr .85fr .55fr;gap:9px 15px;padding:22px 13px 14px;margin-top:18px}
  .chapa-stage a img {max-height:150px}
  .chapa-stage .menu-art {grid-column:1}
  .chapa-stage .business-card {grid-column:2 / span 2;grid-template-columns:1fr 1fr;align-items:center}
  .business-card span {grid-column:1/-1}
  .palette {gap:8px 12px}
  .palette small {width:100%;margin-left:0}
  .print-social {grid-template-columns:1fr;gap:53px;padding-block:52px 61px}
  .social-stage {max-width:520px}
  .print-stage a:not(:first-child) img {height:clamp(102px,29vw,190px)}
  .video-band {padding:53px 0 59px;border-radius:12% 5% 12% 5% / 2.5% 2% 3% 2%}
  .video-intro {grid-template-columns:1fr;gap:14px}
  .video-covers {grid-template-columns:1fr;margin-top:22px;gap:19px}
  .video-covers img {aspect-ratio:1.85}
  .video-covers figcaption {padding-top:6px}
  .photo-feature {padding-block:0 33px}
  .portraits {grid-template-columns:repeat(2,minmax(0,1fr))}
  .agency {padding-block:57px 68px}
  .agency-inner {grid-template-columns:1fr;gap:22px}
  .studio {width:min(100%,550px);margin:auto}
  .studio-caption {font-size:.64rem}
  .testimonials {padding-block:48px}
  .reviews-head {align-items:start}
  .carousel-controls {gap:4px}
  .quotes {grid-auto-columns:84%;margin-top:15px;gap:12px}
  .contact {padding:47px 0}
  .contact-inner {grid-template-columns:1fr;gap:22px}
  .contact-info {padding:0;border:0}
  .footer {display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:.78rem}
  .footer p {grid-row:2;grid-column:1/-1}
  .footer>a:last-child {justify-self:end}
}
@media (max-width:360px) {
  .wrap {width:calc(100% - 28px)}
  .reviews-head {flex-wrap:wrap}
  .case-head img {width:66px}
  .social-stage {gap:8px}
}
@media (prefers-reduced-motion:reduce) {
  :root {scroll-behavior:auto}
  *,*::before,*::after {animation:none!important;transition:none!important}
}
@media (forced-colors:active) {
  em,.contact em {color:CanvasText;background:none;-webkit-text-fill-color:currentColor}
  .compare-line span,.button {border:1px solid ButtonText}
}

.video-still {position:relative}
.video-still span {position:absolute;display:grid;place-content:center;top:52%;left:51%;transform:translate(-50%,-50%);width:26%;min-height:47%;border-radius:50%;background:#302139;color:#fff;font-size:.85rem;font-weight:760;aspect-ratio:1}

/* Apresentação interativa dos materiais e das redes sociais. */
.mascot-scenes {align-items:center}
.scene-main,.scene-top,.scene-bottom {align-self:center;margin:0;border-radius:20px}
.scene-top img,.scene-bottom img {object-fit:contain}
.social-stage {grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.phone-preview {min-width:0}
.phone-preview figcaption {margin-top:12px;text-align:center;font-size:.82rem;font-weight:750;color:var(--muted)}
.instagram-phone {position:relative;overflow:hidden;isolation:isolate;min-width:0;background:#fff;border:6px solid #181623;border-radius:32px;box-shadow:0 0 0 1px #a49bad,0 18px 24px #24113925;padding:0 0 8px;font-size:11px;color:#181623}
.instagram-phone::before {content:"";position:absolute;width:29%;height:12px;left:35.5%;top:6px;border-radius:999px;background:#181623}
.phone-status {height:32px;padding:7px 10px 4px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:-.02em}
.ig-title {display:flex;justify-content:space-between;align-items:center;padding:3px 10px 7px;border-bottom:1px solid #eee;font-size:16px}
.ig-title i {font-family:Georgia,serif;font-size:20px;font-weight:750;letter-spacing:-1px}
.ig-account {display:flex;align-items:center;gap:6px;padding:7px 8px;font-size:10px;white-space:nowrap}
.ig-account img {width:24px;height:24px;border-radius:50%;object-fit:cover;flex:none}
.ig-account>span {margin-left:auto}
.social-stage .ig-feed-art,.social-stage .ig-story-art {display:block;position:relative;gap:0;background:#f5f2f7}
.ig-feed-art img {width:100%;aspect-ratio:4/5;object-fit:contain}
.ig-actions {display:flex;align-items:center;gap:8px;padding:3px 5px}
.ig-actions>span {display:flex;align-items:center;gap:9px}
.ig-actions button {padding:4px;border:0;background:transparent;color:#181623;min-height:35px;min-width:35px;display:grid;place-items:center}
.ig-actions button:last-child {margin-left:auto}
.ig-actions button[aria-pressed="true"] {color:#bf1542}
.ig-actions button[aria-pressed="true"] svg {fill:currentColor}
.ig-icon {width:20px;height:20px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.print-social .ig-caption {margin:0;padding:0 10px 10px;font-size:10px;line-height:1.4;color:#24202b}
.ig-navigation {padding:8px 9px 5px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee;font-size:22px}
.ig-navigation img {width:18px;height:18px;border-radius:50%}
.home-indicator {height:4px;width:36%;border-radius:8px;background:currentColor;opacity:.85;margin:7px auto 1px}
.story-phone {background:#100f15;color:#fff}
.story-progress {display:flex;gap:3px;padding:2px 7px}
.story-progress i {height:2px;background:#ffffff5c;flex:1;border-radius:4px}
.story-progress i:first-child {background:#fff}
.story-phone .ig-account {padding-block:6px 9px}
.social-stage .ig-story-art {background:#100f15}
.ig-story-art img {width:100%;aspect-ratio:941/1672;object-fit:contain}
.story-reply {display:flex;align-items:center;gap:7px;padding:13px 8px 6px;font-size:10px}
.story-reply>span {display:block;border:1px solid #ffffff78;border-radius:25px;padding:8px;flex:1}
.story-reply b {font-size:17px;white-space:nowrap}
.social-stage .social-profile {grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;text-align:left;margin:0}
.social-profile img {width:54px;height:54px;border-radius:50%;box-shadow:0 3px 8px #2515372a}
.social-profile>span {margin:0}
.paper-gallery {margin-top:25px}
.paper-viewer {position:relative;overflow:hidden;aspect-ratio:3/2;border-radius:18px;background:#eee7e1;touch-action:pan-y;cursor:default}
.paper-viewer.zoomed {cursor:grab;touch-action:none}
.paper-viewer.dragging {cursor:grabbing}
.paper-viewer img {width:100%;height:100%;object-fit:contain;transform:translate(var(--paper-x,0px),var(--paper-y,0px)) scale(var(--paper-zoom,1));transform-origin:center;user-select:none;-webkit-user-drag:none;max-width:none}
.paper-toolbar {display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:10px}
.paper-toolbar>span {font-size:.8rem;font-weight:720}
.paper-toolbar>div {display:flex;gap:5px}
.paper-toolbar button {width:39px;height:39px;display:grid;place-content:center;border:1px solid #cdbbe5;border-radius:50%;background:#fff;color:var(--ink);font-size:1.3rem}
.paper-toolbar button:disabled {opacity:.42;cursor:default}
.paper-thumbnails {display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.paper-thumbnails a {display:grid;grid-template-columns:61px 1fr;align-items:center;gap:9px;min-width:0;padding:5px;border:2px solid transparent;border-radius:12px;background:#eee6f6;text-decoration:none;font-size:.76rem;font-weight:720}
.paper-thumbnails a[aria-current="true"] {border-color:#7852bd;background:#faf7ff}
.paper-thumbnails img {width:61px;height:46px;object-fit:cover;border-radius:6px}
.paper-links {display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;margin-top:11px;font-size:.8rem}
.print-social .paper-links p {font-size:.8rem;margin:0;max-width:none;color:var(--muted)}
.paper-links>a {font-weight:720;text-underline-offset:4px}
@media(max-width:1000px) and (min-width:731px) {
  .social-stage {gap:11px}
  .instagram-phone {border-width:4px;border-radius:23px}
  .ig-title i {font-size:16px}
  .ig-account {font-size:8px;gap:4px;padding-inline:5px}
  .ig-account img {width:18px;height:18px}
  .paper-thumbnails a {grid-template-columns:1fr}
}
@media(max-width:730px) {
  .scene-main,.scene-top,.scene-bottom {align-self:center;margin:0;border-radius:12px}
  .social-stage {gap:13px;max-width:540px;margin-inline:auto}
  .instagram-phone {border-width:5px;border-radius:25px}
  .ig-title {padding-inline:7px}
  .ig-title i {font-size:17px}
  .ig-account {font-size:8px;padding-inline:5px;gap:4px}
  .ig-account img {width:20px;height:20px}
  .ig-actions {gap:4px;padding-inline:3px}
  .ig-actions>span {gap:5px}
  .ig-actions button {min-width:29px}
  .ig-icon {width:17px;height:17px}
  .story-reply {font-size:8px;padding:9px 5px 5px;gap:4px}
  .story-reply b {font-size:13px}
  .paper-thumbnails a {font-size:.7rem;grid-template-columns:51px 1fr;gap:6px}
  .paper-thumbnails img {width:51px;height:42px}
}

.social-stage {align-items:stretch}
.phone-preview {display:flex;flex-direction:column}
.instagram-phone {display:flex;flex-direction:column;flex:1}
.ig-navigation {margin-top:auto}
.phone-status,.ig-title,.ig-account,.ig-actions,.ig-caption,.ig-navigation,.home-indicator,.ig-feed-art,.ig-story-art,.story-progress,.story-reply {flex-shrink:0}
.print-social p.ig-caption {margin:0;padding:0 10px 10px;font-size:10px;line-height:1.4;color:#24202b;max-width:none}

/* Ritmo de leitura e apresentações interativas. */
.print-social {display:flex;flex-direction:column;gap:68px}
.social {display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:center;gap:44px}
.social-stage {width:100%;max-width:680px;margin:0 0 0 auto}
.social-intro {min-width:0}
.print-social .print {display:grid;grid-template-columns:minmax(250px,.64fr) minmax(0,1.36fr);align-items:center;gap:40px;padding:40px;background:#e0e2e5;border-radius:24px}
.paper-intro {min-width:0}
.paper-gallery {margin:0;min-width:0}
.paper-viewer {background:#e0e2e5;border-radius:10px}
.paper-thumbnails a {background:#f4f5f6}
.paper-thumbnails a[aria-current="true"] {border-color:#772b43;background:#fff}
.paper-toolbar button {border-color:#b9b5bc}
.paper-links a {color:#50253c}
.mascot-scenes {aspect-ratio:1.534}
.scene-main,.scene-top,.scene-bottom {aspect-ratio:9/16;align-self:center}
.scene img,.scene:hover img {transform:none;transition:none;object-fit:cover}
.instagram-phone {height:700px;flex:none}
.feed-scroll {flex:1;min-height:0;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#a49ba9 #f4f1f5;scroll-snap-type:y proximity;position:relative}
.ig-post {scroll-snap-align:start}
.feed-scroll .ig-feed-art {display:block}
.feed-scroll .ig-caption {padding-bottom:16px}
.phone-controls {display:flex;align-items:center;justify-content:center;gap:12px;margin-top:8px;font-size:.72rem;font-weight:600}
.phone-controls button {width:36px;height:36px;border:1px solid #c3b4da;border-radius:50%;background:white;color:#272037}
.phone-controls button:disabled {opacity:.4;cursor:default}
.phone-controls a {display:block!important;text-decoration:underline!important;font-size:.72rem!important}
.story-progress {padding:0 7px;gap:4px}
.story-progress button {height:20px;flex:1;border:0;background:transparent;padding:8px 0;position:relative}
.story-progress button::after {content:"";display:block;background:#ffffff55;height:3px;border-radius:3px}
.story-progress button[aria-current="true"]::after {background:#fff}
.story-account {border:0;background:transparent;color:inherit;flex-shrink:0;width:100%;text-align:left;font-family:inherit}
.story-account:hover {background:#ffffff0d}
.story-canvas {display:block;flex:1;min-height:0;width:100%;border:0;padding:0;background:#100f15;color:inherit;cursor:pointer;overflow:hidden}
.story-canvas img {width:100%;height:100%;object-fit:contain}
.product-demo {display:flex;flex-direction:column;align-items:center;gap:7px;min-width:0;font-size:.8rem;font-weight:700;text-align:center}
.product-demo>button {width:100%;border:0;padding:0;background:transparent;min-width:0;color:inherit}
.product-demo>button>img {width:100%;height:220px;object-fit:contain;filter:drop-shadow(0 10px 12px #47235237)}
.chapa-stage .product-demo>a {display:block;padding:3px 0;font-size:.72rem;text-decoration:underline;text-underline-offset:3px}
.menu-rotation {display:grid;transform-style:preserve-3d;transition:transform .5s ease}
.menu-rotation.is-flipped {transform:rotateY(180deg)}
.menu-face {grid-area:1/1;backface-visibility:hidden;display:block}
.menu-back {transform:rotateY(180deg)}
.menu-face img {width:100%;height:220px;object-fit:contain;filter:drop-shadow(0 10px 12px #47235237)}
.word-piece {display:inline-block}
@media (prefers-reduced-motion:no-preference) {
 .words-ready .word-piece {opacity:.12;transform:translateY(.24em);transition:opacity .24s ease,transform .32s ease}
 .words-ready .word-piece.word-shown {opacity:1;transform:none}
 .hero-orb {animation:orb-breathe 11s ease-in-out infinite alternate;animation-play-state:var(--orb-running,paused)}
}
@keyframes orb-breathe {from{transform:translate3d(0,0,0) rotate(0)}to{transform:translate3d(-12px,12px,0) rotate(12deg)}}
@media(max-width:1000px) and (min-width:731px) {
 .social {grid-template-columns:.66fr 1.34fr;gap:24px}
 .instagram-phone {height:590px}
 .print-social .print {padding:28px;gap:25px}
}
@media(max-width:730px) {
 .print-social {gap:46px}
 .social {grid-template-columns:1fr;gap:24px}
 .social-stage {margin:0 auto;max-width:540px}
 .instagram-phone {height:clamp(380px,calc(100vw + 60px),630px)}
 .print-social .print {grid-template-columns:1fr;gap:22px;padding:22px 16px;border-radius:18px}
 .paper-gallery {width:100%}
 .paper-toolbar>span {font-size:.74rem}
 .paper-toolbar button {width:36px;height:36px}
 .paper-thumbnails a {grid-template-columns:1fr}
 .paper-thumbnails img {width:100%;height:auto;aspect-ratio:3/2}
 .product-demo>button>img,.menu-face img {height:145px}
 .phone-controls {gap:8px;font-size:.66rem}
}
@media(prefers-reduced-motion:reduce) {
 .hero-orb {animation:none}
 .menu-rotation {transition:none}
}


.chapa-stage a:hover img {transform:none}

/* Primeira dobra natalina. */
.hero {background:radial-gradient(ellipse at 82% 58%,#d9c7ee 0%,transparent 52%),linear-gradient(115deg,#faf7ff 0%,#f0e8fa 51%,#e6d9f4 100%)}
.hero::before {content:none}
.hero-inner {grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:18px;min-height:730px;padding-block:95px 93px}
.hero-copy {padding-bottom:8px}
.hero-copy h1 {font-size:clamp(3rem,5.05vw,4.8rem);line-height:1.015;font-weight:830;letter-spacing:-.051em;max-width:13.7ch}
.hero-copy>p {margin-top:21px;font-size:clamp(1.02rem,1.5vw,1.2rem);line-height:1.55;max-width:35ch}
.hero-copy p.location {font-size:.84rem;margin-top:16px}
.hero-actions {margin-top:24px}
.hero-actions .button {min-height:50px;border-radius:12px;padding-inline:23px}
.hero-art {margin:0;isolation:isolate;width:100%;position:relative}
.hero-art::before,.hero-art::after {content:none}
.christmas-mascot {display:block;width:100%;height:auto;max-height:570px;object-fit:contain;object-position:center;filter:none}
.christmas-lights {position:absolute;top:0;left:0;right:0;height:84px;z-index:2;pointer-events:none}
.christmas-lights svg {display:block;width:100%;height:100%;overflow:visible}
.light-wire {fill:none;stroke:#6d607c;stroke-width:1.1;opacity:.48}
.light-stem {fill:none;stroke:#6d607c;stroke-width:1;opacity:.7}
.light-cap {fill:#8c7a6d}
.light-core {fill:#fff1c4;stroke:#e9c995;stroke-width:.65}
.light-glow {fill:#ffdb91;opacity:.25}
.lights-toggle {position:absolute;right:24px;top:75px;z-index:3;display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:5px 9px;border:1px solid #b9aaca7a;border-radius:999px;background:#fff8;color:#5c4c68;font-size:.67rem;font-weight:650}
.lights-toggle span {font-size:1rem;line-height:1}
.hero-wave {height:70px}
@media(prefers-reduced-motion:no-preference) {
 .light-glow {animation:holiday-glow 5.8s ease-in-out var(--light-delay) infinite alternate;animation-play-state:var(--orb-running,paused)}
 .hero.lights-paused .light-glow {animation-play-state:paused;opacity:.22}
}
@keyframes holiday-glow {0%,25%{opacity:.14}75%,100%{opacity:.48}}
@media(max-width:1000px) and (min-width:731px) {
 .hero-inner {min-height:650px;padding-block:96px 76px;gap:13px}
 .hero-copy h1 {font-size:clamp(2.75rem,5.2vw,3.7rem)}
 .christmas-mascot {max-height:480px}
}
@media(max-width:730px) {
 .hero-inner {display:flex;flex-direction:column;align-items:stretch;padding-block:78px 47px;min-height:auto;gap:11px}
 .hero-copy {padding:0}
 .hero-copy h1 {font-size:clamp(2.2rem,8.8vw,3.8rem);line-height:1.02;max-width:13.7ch}
 .hero-copy>p {font-size:1rem;line-height:1.5;max-width:35ch;margin-top:16px}
 .hero-actions {margin-top:20px}
 .hero-copy p.location {font-size:.78rem;margin-top:14px}
 .hero-art {margin:2px auto 0;width:min(100%,365px)}
 .christmas-mascot {width:100%;max-height:340px}
 .christmas-lights {height:51px}
 .lights-toggle {top:49px;right:16px;font-size:.61rem;min-height:30px;padding:4px 7px}
 .hero-wave {height:37px}
}
@media(prefers-reduced-motion:reduce) {
 .light-glow {animation:none;opacity:.3}
}


.hero-copy>p {max-width:44ch}
.hero-phone {display:grid;gap:2px;text-decoration:none;font-size:.86rem;line-height:1.35}
.hero-phone span {font-size:.7rem;color:#65566f}
.hero-phone strong {font-weight:750}
.hero-phone:hover strong {text-decoration:underline;text-underline-offset:4px}
.contact-phone {font-size:1.1rem;font-weight:720;text-underline-offset:4px}
@media(max-width:730px) {
 .hero-inner {padding-top:88px}
 .hero-copy>p {max-width:100%}
 .hero-actions {gap:13px 18px}
 .hero-phone {font-size:.83rem}
}

/* Ajustes da abertura colorida. */
.kicker .word-piece {width:auto;height:auto;flex:0 0 auto;background:none;border-radius:0;white-space:nowrap}
.intro>.kicker {flex-wrap:wrap;gap:7px}
.hero-inner {padding-top:115px}
.hero-art {min-height:535px;display:flex;align-items:center;justify-content:center}
.hero-art::before {content:"";position:absolute;inset:2% -2% 4%;border-radius:50%;background:radial-gradient(circle at 33% 28%,#fcf6ff 0%,#e3d0f3 47%,#c4a3e8 100%);border:1px solid #f8f2ff;box-shadow:inset -20px -15px 50px #8460ac20,0 25px 65px #9274b423;z-index:-1}
.hero-art::after {content:"";position:absolute;left:4%;right:-3%;bottom:0;height:15%;background:radial-gradient(ellipse,#80668e25,transparent 70%);border-radius:50%;z-index:-1;filter:blur(7px)}
.christmas-tree {position:absolute;right:-5%;bottom:8%;width:51%;max-height:530px;object-fit:contain;object-position:bottom;z-index:0;pointer-events:none}
.christmas-mascot {position:relative;z-index:1;width:104%;max-width:none;margin-left:-16%;max-height:590px}
.christmas-lights {height:105px}
.light-wire {stroke:#78697d;stroke-width:1.35;opacity:.7}
.light-core {fill:var(--bulb-color);stroke:#fff7;stroke-width:.65}
.light-glow {fill:var(--bulb-color);opacity:.32}
.bulb-highlight {fill:#fff;opacity:.6}
.lights-toggle {top:96px;right:22px;width:38px;height:38px;min-height:38px;border-radius:50%;padding:9px;background:#ffffffba;color:#593b73;border:1px solid #ae95c4;box-shadow:0 3px 9px #80609217}
.lights-toggle>svg {display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.lights-control-label {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hero.lights-off .light-glow {opacity:0!important;animation:none!important}
.hero.lights-off .light-core {fill:#9c8d9f;stroke:#8f8195;opacity:.45}
.hero.lights-off .bulb-highlight {opacity:.12}
.hero.lights-off .lights-toggle {background:#e4dce9;color:#796b82}
@media(prefers-reduced-motion:no-preference) {
 .light-core {animation:bulb-shimmer 3.7s ease-in-out var(--light-delay) infinite alternate;animation-play-state:var(--orb-running,paused)}
 .hero.lights-off .light-core {animation:none!important}
}
@keyframes bulb-shimmer {from{filter:brightness(.8)}to{filter:brightness(1.25)}}
@media(max-width:1000px) and (min-width:731px) {
 .hero-art {min-height:450px}
 .christmas-mascot {max-height:500px}
}
@media(max-width:730px) {
 .hero-inner {padding-top:97px}
 .christmas-lights {height:65px}
 .lights-toggle {top:61px;right:17px;width:32px;height:32px;min-height:32px;padding:6px}
 .hero-art {min-height:330px;margin-top:18px}
 .hero-art::before {inset:0 -2% 3%}
 .christmas-tree {width:50%;right:-3%;bottom:10%;max-height:320px}
 .christmas-mascot {max-height:355px;width:106%;margin-left:-15%}
}
@media(prefers-reduced-motion:reduce) {
 .light-core {animation:none}
}
.hero-art::before {inset:auto;left:-2%;top:50%;width:105%;aspect-ratio:1;transform:translateY(-50%)}

/* Bola de Natal em vidro, sobre a composição existente. */
.hero-art::before {
 background:radial-gradient(circle at 32% 20%,#ffffff55 0%,#e9edff18 39%,#a9a4da27 77%,#b5d4e845 100%);
 border:1px solid #ffffffa8;
 box-shadow:inset 14px 13px 30px #ffffff50,inset -20px -22px 35px #686d9d28,0 26px 55px #65528520;
}
.glass-sphere {
 position:absolute;left:-2%;top:50%;width:105%;aspect-ratio:1;transform:translateY(-50%);
 border-radius:50%;z-index:2;pointer-events:none;
 border:2px solid #f9fdffe8;
 background:radial-gradient(ellipse at 27% 14%,#ffffff45 0%,#ffffff0a 22%,transparent 40%),radial-gradient(ellipse at 70% 87%,#b8eafa26,transparent 45%);
 box-shadow:inset 4px 5px 11px #ffffffb8,inset -8px -12px 22px #5e75a531,0 2px 2px #71679c24;
}
.glass-sphere::before {
 content:"";position:absolute;left:8%;top:10%;width:19%;height:38%;border-radius:70% 45% 60% 35%;
 border-left:7px solid #ffffffa3;border-top:4px solid #ffffff86;transform:rotate(29deg);
 background:linear-gradient(110deg,#ffffff1c,transparent 67%);
}
.glass-sphere::after {
 content:"";position:absolute;right:7%;bottom:10%;width:18%;height:29%;border-radius:40% 60% 75% 50%;
 border-right:3px solid #ffffff94;border-bottom:2px solid #e4f6ff8c;transform:rotate(25deg);
}
.ornament-cap {
 position:absolute;top:-2.5%;left:44.5%;width:11%;height:5%;
 border-radius:5px 5px 12% 12%;
 background:repeating-linear-gradient(90deg,#ae9164 0%,#e2cea5 11%,#fff2d5 16%,#c4ad83 24%);
 border:1px solid #c4ae87;box-shadow:inset 0 3px 5px #fff6,0 2px 4px #5e4c5329;
}
.ornament-cap::before {
 content:"";position:absolute;width:32%;height:95%;left:34%;bottom:91%;border:2px solid #bda781;border-radius:50% 50% 38% 38%;background:transparent;
}
@media(max-width:730px) {
 .glass-sphere {border-width:1.4px}
 .glass-sphere::before {border-left-width:4px;border-top-width:2px}
 .glass-sphere::after {border-right-width:2px;border-bottom-width:1px}
 .ornament-cap {border-radius:3px 3px 12% 12%}
 .ornament-cap::before {border-width:1.4px}
}

@media(max-width:730px) {
 .ornament-cap {top:-1%}
 .ornament-cap::before {display:none}
}

/* Brilho localizado na estrela da árvore. */
.tree-scene {position:absolute;right:-5%;bottom:8%;width:51%;aspect-ratio:2/3;max-height:530px;z-index:0;pointer-events:none}
.tree-scene .christmas-tree {position:static;display:block;width:100%;height:100%;max-height:none}
.tree-star-glow {position:absolute;left:50.6%;top:8.4%;width:clamp(14px,2.1vw,29px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#fffbeeda 0%,#ffe4a573 21%,#ffd57926 48%,transparent 72%);opacity:.65}
.tree-star-glow::before,.tree-star-glow::after {content:"";position:absolute;top:47%;left:-12%;width:124%;height:6%;border-radius:50%;background:linear-gradient(90deg,transparent,#fff9df 45%,#fff 50%,#fff9df 55%,transparent)}
.tree-star-glow::after {transform:rotate(90deg)}
.hero.lights-off .tree-star-glow {opacity:0;animation:none}
@media(prefers-reduced-motion:no-preference) {
 .tree-star-glow {animation:star-shine 4.6s ease-in-out infinite alternate;animation-play-state:var(--orb-running,paused)}
}
@keyframes star-shine {0%,20%{opacity:.3}80%,100%{opacity:.95}}
@media(max-width:730px) {
 .tree-scene {right:-3%;bottom:10%;width:50%;max-height:320px}
 .tree-star-glow {width:17px}
}
@media(prefers-reduced-motion:reduce) {
 .tree-star-glow {animation:none;opacity:.55}
 .hero.lights-off .tree-star-glow {opacity:0}
}


.portfolio-video {display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#0d0a1b;border:1px solid #ffffff35;border-radius:16px}
.video-covers figcaption small {display:block;margin-top:5px;color:#cec2e6;font-size:.76rem;font-weight:450}
.video-transcript {margin-top:13px;color:#ddd4ef;font-size:.82rem}
.video-transcript summary {cursor:pointer;font-weight:650;text-underline-offset:3px}
.video-transcript p {font-size:.83rem;line-height:1.55;margin-top:9px}


/* Composição responsiva das aplicações Chapa Quente. */
.chapa-stage {grid-template-columns:1.05fr 1.22fr 1fr .68fr .95fr 1.1fr;grid-template-areas:"bag shirt box shake menu card";column-gap:clamp(15px,2vw,30px);row-gap:24px;align-items:end;padding:35px 26px 22px}
.chapa-stage>.delivery-bag {grid-area:bag}
.chapa-stage>.shirt {grid-area:shirt}
.chapa-stage>.box {grid-area:box;padding-top:0}
.chapa-stage>.shake {grid-area:shake}
.chapa-stage>.menu-art {grid-area:menu}
.chapa-stage>.business-card {grid-area:card;grid-template-columns:1fr;gap:8px}
.chapa-stage>a {gap:8px}
.chapa-stage>a>img,.chapa-stage .product-demo>button>img,.chapa-stage .menu-face img {width:100%;height:230px;max-height:none;object-fit:contain;object-position:center bottom}
.chapa-stage .business-card>img {height:185px}
.chapa-stage .product-demo>span {min-height:28px;display:flex;align-items:center;justify-content:center;line-height:1.3}
.chapa-stage .business-card>span {grid-column:auto}
@media(max-width:1000px) and (min-width:731px) {
 .chapa-stage {column-gap:13px;padding-inline:16px}
 .chapa-stage>a>img,.chapa-stage .product-demo>button>img,.chapa-stage .menu-face img {height:180px}
 .chapa-stage .business-card>img {height:145px}
}
@media(max-width:730px) {
 .chapa-stage {grid-template-columns:repeat(3,minmax(0,1fr));grid-template-areas:"bag menu shake" "shirt box card";column-gap:12px;row-gap:22px;padding:25px 16px 23px;align-items:end}
 .chapa-stage>a,.chapa-stage>.product-demo {font-size:.72rem;gap:6px;min-width:0}
 .chapa-stage>a>img,.chapa-stage .product-demo>button>img,.chapa-stage .menu-face img {height:140px;max-height:none;object-fit:contain;object-position:center bottom}
 .chapa-stage>.shirt>img,.chapa-stage>.box>button>img {height:116px}
 .chapa-stage>.business-card>img {height:116px}
 .chapa-stage>.business-card {grid-template-columns:1fr}
 .chapa-stage .product-demo>a {font-size:.68rem;padding:1px 0;min-height:25px;display:flex;align-items:center;justify-content:center}
 .chapa-stage .product-demo>span {min-height:28px}
 .chapa-stage>.shirt,.chapa-stage>.business-card {padding-bottom:59px}
}
@media(max-width:360px) {
 .chapa-stage {column-gap:8px;padding-inline:12px}
 .chapa-stage>a>img,.chapa-stage .product-demo>button>img,.chapa-stage .menu-face img {height:122px}
 .chapa-stage>.shirt>img,.chapa-stage>.box>button>img,.chapa-stage>.business-card>img {height:99px}
 .chapa-stage>a,.chapa-stage>.product-demo {font-size:.68rem}
}

