:root {
  --ink: #101b2d;
  --ink-2: #182840;
  --yellow: #f8df5f;
  --yellow-bright: #ffe600;
  --cream: #f7f5ef;
  --white: #fffef9;
  --muted: #6e7682;
  --line: rgba(16, 27, 45, 0.14);
  --radius: 26px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background: var(--cream);
  font-family: "DM Sans", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.section-pad { padding: 120px max(32px, calc((100vw - 1220px) / 2)); }

.site-header {
  position: relative;
  z-index: 20;
  height: 106px;
  padding: 0 max(32px, calc((100vw - 1220px) / 2));
  display: grid;
  grid-template-columns: 170px 1fr 230px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  background: rgba(247, 245, 239, 0.92);
  backdrop-filter: blur(16px);
}
.brand {
  position: relative;
  width: 92px;
  line-height: .66;
  display: flex;
  flex-direction: column;
  font: 800 29px/0.72 Georgia, serif;
  letter-spacing: -2.5px;
}
.brand i {
  position: absolute;
  width: 10px; height: 10px;
  right: -2px; bottom: -2px;
  border-radius: 50%;
  background: var(--yellow);
}
.desktop-nav { display: flex; justify-content: center; gap: 42px; }
.desktop-nav a { font-size: 14px; font-weight: 700; transition: opacity .2s; }
.desktop-nav a:hover { opacity: .55; }
.button {
  min-height: 54px;
  padding: 0 22px;
  border: 2px solid var(--ink);
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: var(--ink);
  background: var(--yellow);
  box-shadow: 4px 4px 0 var(--ink);
  font-weight: 800;
  transition: transform .2s, box-shadow .2s;
}
.button:hover { transform: translate(3px, 3px); box-shadow: 1px 1px 0 var(--ink); }
.button-small { min-height: 48px; padding: 0 17px; justify-self: end; font-size: 13px; box-shadow: 3px 3px 0 var(--ink); }
.menu-button { display: none; border: 0; background: none; }

.hero {
  min-height: 730px;
  padding-top: 78px;
  padding-bottom: 92px;
  display: grid;
  grid-template-columns: 1.02fr .98fr;
  gap: 54px;
  align-items: center;
}
.eyebrow {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 25px;
  text-transform: uppercase;
  font-size: 12px; font-weight: 800; letter-spacing: 1.45px;
}
.eyebrow i { width: 9px; height: 9px; border-radius: 50%; background: var(--yellow); box-shadow: 0 0 0 5px rgba(248,223,95,.25); }
.hero h1, .section-heading h2, .work h2, .contact h2 {
  margin: 0;
  font: 800 clamp(54px, 5.9vw, 88px)/.98 "Manrope", sans-serif;
  letter-spacing: -5px;
}
.marker { position: relative; z-index: 1; }
.marker::after {
  content: ""; position: absolute; z-index: -1;
  left: -5px; right: -8px; bottom: 5px; height: 20px;
  background: var(--yellow);
  transform: rotate(-1.2deg); border-radius: 2px;
}
.hero-lead { max-width: 600px; margin: 28px 0; color: #4f5968; font-size: 19px; line-height: 1.65; }
.hero-actions { display: flex; align-items: center; gap: 34px; }
.text-link { display: inline-flex; gap: 13px; align-items: center; font-size: 14px; font-weight: 800; border-bottom: 1px solid currentColor; padding-bottom: 4px; }
.hero-proof { display: flex; align-items: center; gap: 14px; margin-top: 46px; }
.hero-proof p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; }
.hero-proof strong { color: var(--ink); }
.avatars { display: flex; }
.avatars span {
  width: 35px; height: 35px; margin-left: -8px;
  display: grid; place-items: center;
  border: 2px solid var(--cream); border-radius: 50%;
  background: var(--ink); color: white; font-size: 11px; font-weight: 800;
}
.avatars span:first-child { margin-left: 0; background: var(--yellow); color: var(--ink); }
.avatars span:last-child { background: #f4a07e; }

.happy-wheel-game{position:relative;width:min(100%,540px);min-height:570px;padding:25px;display:flex;flex-direction:column;overflow:hidden;border:2px solid var(--ink);border-radius:28px;background:#e9e4d7;box-shadow:12px 12px 0 var(--ink);isolation:isolate}.happy-wheel-game::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(16,27,45,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(16,27,45,.07) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 85%);z-index:-1}.wheel-game-heading span,.wheel-game-heading strong{display:block}.wheel-game-heading span{font-size:9px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.wheel-game-heading strong{margin-top:5px;font:700 18px "Manrope"}.prize-wheel-wrap{position:relative;width:390px;height:390px;margin:8px auto 0;display:grid;place-items:center}.prize-wheel{position:relative;width:365px;height:365px;border:8px solid var(--ink);border-radius:50%;background:conic-gradient(from -30deg,#f8df5f 0 60deg,#3154d8 60deg 120deg,#f49a7b 120deg 180deg,#f8df5f 180deg 240deg,#3154d8 240deg 300deg,#f49a7b 300deg 360deg);box-shadow:7px 8px 0 rgba(16,27,45,.18);transition:transform 4s cubic-bezier(.12,.62,.08,1)}.prize-wheel::after{content:"";position:absolute;inset:12px;border:1px solid rgba(16,27,45,.25);border-radius:50%}.prize-wheel>span{position:absolute;z-index:2;left:50%;top:50%;width:95px;text-align:center;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-125px) rotate(var(--counter-angle));font-weight:800}.prize-wheel>span:nth-child(3n+2){color:white}.prize-wheel b,.prize-wheel small{display:block}.prize-wheel b{font:800 14px "Manrope"}.prize-wheel small{margin-top:2px;font-size:8px;text-transform:uppercase}.wheel-pointer{position:absolute;z-index:5;left:50%;top:-2px;width:40px;height:45px;transform:translateX(-50%);clip-path:polygon(0 0,100% 0,50% 100%);background:var(--ink);filter:drop-shadow(2px 3px 0 rgba(255,255,255,.8))}.wheel-spin{position:absolute;z-index:6;width:105px;height:105px;display:grid;place-content:center;border:6px solid white;border-radius:50%;color:white;background:var(--ink);box-shadow:0 0 0 3px var(--ink),5px 6px 0 rgba(16,27,45,.18);cursor:pointer}.wheel-spin span,.wheel-spin small{display:block}.wheel-spin span{font:800 28px "Manrope"}.wheel-spin small{font-size:8px;text-transform:uppercase}.wheel-spin:disabled{cursor:wait;opacity:.85}.wheel-game-footer{margin-top:auto;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.75)}.wheel-game-footer p{margin:0;font-size:11px;font-weight:700;line-height:1.4}.wheel-game-footer>span{display:block;margin-top:4px;color:var(--muted);font-size:8px;text-transform:uppercase}

.giveaway-dialog{width:min(870px,calc(100% - 28px));padding:0;border:0;border-radius:24px;background:white;box-shadow:0 30px 90px rgba(16,27,45,.3)}.giveaway-dialog::backdrop{background:rgba(16,27,45,.78);backdrop-filter:blur(6px)}.giveaway-dialog form{position:relative;padding:35px;display:grid;grid-template-columns:.85fr 1fr;gap:18px 34px}.giveaway-close{position:absolute;z-index:5;right:18px;top:18px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:white;font-size:24px;cursor:pointer}.giveaway-prize{grid-row:1/7;min-height:470px;padding:32px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;border:2px solid var(--ink);border-radius:19px;color:white;background:linear-gradient(145deg,#3154d8,#833ab4 42%,#e1306c 72%,#f8a44c);box-shadow:7px 7px 0 var(--ink)}.giveaway-prize::before{content:"✦";margin:auto;font:800 150px "Manrope";opacity:.18}.giveaway-prize span{font-size:9px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.giveaway-prize strong{margin-top:8px;font:800 29px/1.05 "Manrope";letter-spacing:-1.5px}.giveaway-prize p{margin:13px 0 0;color:rgba(255,255,255,.75);font-size:12px;line-height:1.5}.giveaway-form-copy{padding-right:38px}.giveaway-form-copy .eyebrow{margin:0 0 12px;font-size:9px}.giveaway-form-copy h2,.giveaway-success h2{margin:0;font:800 35px/1 "Manrope";letter-spacing:-2px}.giveaway-form-copy>p:last-child{margin:13px 0 0;color:var(--muted);font-size:12px;line-height:1.55}.giveaway-dialog label{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.giveaway-dialog label small{font-weight:500}.giveaway-dialog input:not([type=checkbox]){width:100%;margin-top:7px;padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--cream);outline:none}.giveaway-dialog input:focus{border-color:var(--ink)}.giveaway-consent{display:flex!important;align-items:flex-start;gap:9px;text-transform:none!important;line-height:1.4}.giveaway-consent input{flex:0 0 auto;margin-top:2px}.giveaway-dialog form>.button{width:100%;justify-content:space-between;box-shadow:3px 3px 0 var(--ink)}.giveaway-dialog .form-status{color:#a33e32}.giveaway-success{padding:55px;text-align:center}.giveaway-success>div{width:76px;height:76px;margin:0 auto 20px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);box-shadow:5px 5px 0 var(--ink);font-size:30px;font-weight:800}.giveaway-success>p:first-of-type{font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}.giveaway-success>p:last-of-type{max-width:520px;margin:18px auto 28px;color:var(--muted);line-height:1.65}.giveaway-success .button{margin:auto}.hidden{display:none!important}

.hero-visual { position: relative; min-height: 570px; display: grid; place-items: center; perspective: 1000px; }
.happy-sculpture {
  position: relative;
  overflow: hidden;
  width: min(100%, 540px);
  height: 555px;
  border: 2px solid var(--ink);
  border-radius: 28px;
  background: #e9e4d7;
  box-shadow: 12px 12px 0 var(--ink);
  transform: rotate(1.5deg);
  isolation: isolate;
}
.studio-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(16,27,45,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(16,27,45,.08) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, black, transparent 72%);
}
.happy-sculpture::before {
  content: ""; position: absolute; left: -20%; right: -20%; bottom: -90px; height: 210px;
  border-radius: 50%; background: #d5cec0; filter: blur(2px); transform: rotate(-3deg);
}
.smile-object {
  position: absolute; z-index: 2; left: 50%; top: 49%;
  width: 315px; height: 315px; transform: translate(-50%, -50%) rotate(-7deg);
  border: 2px solid var(--ink); border-radius: 46% 54% 48% 52%;
  background: var(--yellow-bright);
  box-shadow: inset -24px -28px 0 rgba(248,188,0,.42), 18px 24px 0 rgba(16,27,45,.14);
}
.smile-object::after {
  content: ""; position: absolute; inset: 18px; border: 1px solid rgba(16,27,45,.18);
  border-radius: 48% 52% 45% 55%;
}
.eye { position: absolute; z-index: 2; top: 88px; width: 29px; height: 39px; border-radius: 50%; background: var(--ink); }
.eye-left { left: 81px; transform: rotate(-5deg); }
.eye-right { right: 81px; transform: rotate(8deg); }
.smile-cut {
  position: absolute; z-index: 2; left: 50%; bottom: 65px; width: 150px; height: 78px;
  transform: translateX(-50%) rotate(2deg);
  overflow: hidden;
}
.smile-cut::before {
  content: ""; position: absolute; left: 0; top: -82px; width: 146px; height: 130px;
  border: 13px solid var(--ink); border-radius: 50%;
}
.blue-orb { position: absolute; z-index: 3; left: 53px; top: 49px; width: 63px; height: 63px; border: 2px solid var(--ink); border-radius: 50%; background: #3154d8; box-shadow: 7px 8px 0 rgba(16,27,45,.18); animation: float 5s ease-in-out infinite; }
.chrome-orb { position: absolute; z-index: 4; border: 2px solid var(--ink); border-radius: 50%; background: radial-gradient(circle at 32% 28%, white 0 8%, #99a0a5 24%, #eff1f0 43%, #626a70 67%, #dfe3e3 100%); }
.chrome-one { right: 45px; bottom: 65px; width: 78px; height: 78px; animation: float 6s .4s ease-in-out infinite; }
.chrome-two { left: 64px; bottom: 118px; width: 35px; height: 35px; animation: float 4s .8s ease-in-out infinite reverse; }
.paper-shape {
  position: absolute; z-index: 1; right: -24px; top: 54px; width: 180px; height: 145px;
  border: 2px solid var(--ink); background: var(--white);
  clip-path: polygon(11% 0, 100% 12%, 79% 100%, 0 68%);
  transform: rotate(9deg);
}
.creative-label, .idea-card {
  position: absolute; z-index: 5; border: 2px solid var(--ink);
  color: var(--ink); background: var(--white); box-shadow: 6px 6px 0 var(--ink);
}
.creative-label { right: 20px; top: 27px; padding: 13px 16px; display: flex; align-items: center; gap: 11px; border-radius: 11px; }
.creative-label > span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 7px; background: var(--yellow); }
.creative-label strong, .creative-label small { display: block; }
.creative-label strong { font-size: 13px; }
.creative-label small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.idea-card { left: 22px; bottom: 25px; padding: 14px 18px; border-radius: 11px; transform: rotate(-2deg); }
.idea-card small, .idea-card strong { display: block; }
.idea-card small { margin-bottom: 3px; color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .8px; }
.idea-card strong { font: 800 20px "Manrope"; letter-spacing: -.7px; }
.sculpture-caption { position: absolute; z-index: 5; right: 16px; bottom: 14px; writing-mode: vertical-rl; font-size: 8px; font-weight: 800; letter-spacing: 1.8px; }
@keyframes float { 50% { transform: translateY(-13px) rotate(4deg); } }

.logo-strip {
  overflow: hidden; min-height: 150px; padding: 34px 0;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 25px;
  color: white; background: var(--ink);
}
.logo-strip p { margin: 0; color: rgba(255,255,255,.55); font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.ticker { width: 100%; display: flex; align-items: center; justify-content: center; gap: clamp(18px, 3vw, 50px); white-space: nowrap; }
.ticker span { font: 700 clamp(15px, 1.7vw, 22px) "Manrope"; letter-spacing: -.5px; opacity: .82; }
.ticker i { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--yellow); }

.process { color: white; background: var(--ink-2); }
.section-heading { display: grid; grid-template-columns: 1.05fr .95fr; gap: 80px; align-items: end; margin-bottom: 72px; }
.eyebrow-light { color: rgba(255,255,255,.65); }
.section-heading h2, .work h2, .contact h2 { font-size: clamp(45px, 5vw, 72px); letter-spacing: -4px; }
.section-heading h2 span, .work h2 span, .contact h2 span { color: var(--yellow); }
.heading-side { max-width: 455px; padding-bottom: 4px; justify-self: end; }
.heading-side p, .heading-description { color: rgba(255,255,255,.62); font-size: 17px; line-height: 1.65; }
.light-link { margin-top: 17px; color: white; }
.steps { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid rgba(255,255,255,.14); }
.step { position: relative; min-height: 330px; padding: 34px 30px 25px; border-right: 1px solid rgba(255,255,255,.14); }
.step:first-child { border-left: 1px solid rgba(255,255,255,.14); }
.step-number { color: rgba(255,255,255,.3); font-size: 11px; font-weight: 700; }
.step-icon { margin: 50px 0 30px; color: var(--yellow); font: 400 38px "Manrope"; }
.step h3 { margin: 0 0 13px; font: 700 19px "Manrope"; letter-spacing: -.5px; }
.step p { margin: 0; color: rgba(255,255,255,.5); font-size: 13px; line-height: 1.65; }

.dark-heading { color: var(--ink); }
.dark-heading .heading-description { color: var(--muted); max-width: 440px; justify-self: end; }
.service-grid { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; background: white; }
.service-card { position: relative; min-height: 425px; padding: 28px; border-right: 1px solid var(--line); transition: background .25s, transform .25s; cursor: pointer; }
.service-card:last-child { border: 0; }
.service-card:hover { background: #efede6; transform: translateY(-5px); }
.service-card.service-yellow { background: var(--yellow); }
.service-top { display: flex; justify-content: space-between; align-items: center; }
.service-top span { color: var(--muted); font-size: 11px; }
.service-top b { width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; font-size: 20px; }
.service-card h3 { margin: 74px 0 22px; font: 700 27px/1.12 "Manrope"; letter-spacing: -1.3px; }
.service-card p { max-width: 215px; color: var(--muted); font-size: 13px; line-height: 1.7; }
.service-open { position: absolute; left: 28px; bottom: 28px; height: 43px; padding: 0 15px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--ink); border-radius: 999px; color: var(--ink); background: transparent; font-size: 17px; cursor: pointer; transition: .2s; }
.service-open span { overflow: hidden; max-width: 0; font-size: 11px; font-weight: 800; transition: max-width .25s; }
.service-card:hover .service-open { color: white; background: var(--ink); }
.service-card:hover .service-open span { max-width: 75px; }
.services-hint { margin: 20px 0 0; color: var(--muted); font-size: 12px; text-align: center; }

.service-dialog {
  width: min(1160px, calc(100% - 36px)); max-height: min(90vh, 850px);
  padding: 0; overflow: hidden; border: 0; border-radius: 25px;
  color: var(--ink); background: var(--white); box-shadow: 0 30px 100px rgba(16,27,45,.38);
}
.service-dialog::backdrop { background: rgba(10,18,31,.78); backdrop-filter: blur(7px); }
.service-dialog-shell { position: relative; min-height: 690px; display: grid; grid-template-columns: .72fr 1.45fr; }
.service-dialog-close {
  position: absolute; z-index: 10; right: 22px; top: 22px;
  width: 45px; height: 45px; display: grid; place-items: center;
  border: 1px solid var(--line); border-radius: 50%; color: var(--ink);
  background: rgba(255,255,255,.9); font-size: 27px; cursor: pointer;
}
.service-dialog-visual {
  position: relative; overflow: hidden; min-height: 100%;
  padding: 32px; display: flex; flex-direction: column; justify-content: space-between;
  border-right: 2px solid var(--ink); background: var(--yellow);
}
.service-dialog-visual[data-theme="identity"] { background: #f49a7b; }
.service-dialog-visual[data-theme="web"] { color: white; background: #3154d8; }
.service-dialog-visual[data-theme="growth"] { background: #b9dfca; }
.service-visual-number { position: relative; z-index: 2; font-size: 12px; font-weight: 800; letter-spacing: 1px; }
.service-visual-symbol {
  position: relative; z-index: 2; width: 118px; height: 118px; margin: auto;
  display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50%;
  background: rgba(255,255,255,.28); box-shadow: 9px 9px 0 currentColor;
  font: 500 51px "Manrope"; transform: rotate(-7deg);
}
.service-visual-orbit {
  position: absolute; width: 410px; height: 410px; left: -170px; bottom: -125px;
  border: 42px solid rgba(255,255,255,.48); border-radius: 50%;
}
.service-dialog-visual > p { position: relative; z-index: 2; margin: 0; font-size: 9px; font-weight: 800; line-height: 1.5; letter-spacing: 1.7px; }
.service-dialog-content { overflow-y: auto; padding: 68px 64px 48px; }
.service-dialog-kicker { margin-bottom: 16px; color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: 1.4px; text-transform: uppercase; }
.service-dialog-content > h2 { max-width: 750px; margin: 0; font: 800 clamp(36px,4vw,58px)/1.02 "Manrope"; letter-spacing: -3px; }
.service-intro { max-width: 730px; margin: 20px 0 38px; color: var(--muted); font-size: 16px; line-height: 1.7; }
.service-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.service-detail-grid section { padding: 24px; border: 1px solid var(--line); border-radius: 17px; background: #f4f2ec; }
.detail-label { display: block; margin-bottom: 18px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.service-list, .deliverable-list { margin: 0; padding: 0; display: grid; gap: 12px; list-style: none; }
.service-list li, .deliverable-list li { position: relative; padding-left: 22px; font-size: 13px; line-height: 1.4; }
.service-list li::before { content: "✦"; position: absolute; left: 0; color: #d1ae00; }
.deliverable-list li::before { content: "✓"; position: absolute; left: 0; font-weight: 800; }
.service-process { margin-top: 30px; }
.mini-process { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: var(--line); }
.mini-process article { min-height: 115px; padding: 18px; background: white; }
.mini-process span { color: #b3b6b9; font-size: 10px; font-weight: 800; }
.mini-process strong { display: block; margin-top: 24px; font: 700 14px/1.25 "Manrope"; }
.service-outcome { margin-top: 30px; padding: 24px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-radius: 17px; color: white; background: var(--ink); }
.service-outcome > div span { display: block; margin-bottom: 6px; color: rgba(255,255,255,.45); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; }
.service-outcome strong { max-width: 400px; display: block; font: 600 17px/1.35 "Manrope"; }
.service-outcome .button { flex: 0 0 auto; min-height: 48px; font-size: 12px; box-shadow: 3px 3px 0 white; }

.happy-products{color:white;background:var(--ink)}
.products-heading{display:grid;grid-template-columns:1.1fr .75fr;gap:80px;align-items:end;margin-bottom:60px}.products-heading h2{margin:0;font:800 clamp(46px,5vw,72px)/1 "Manrope";letter-spacing:-4px}.products-heading h2 span{color:var(--yellow)}.products-heading>p{margin:0;color:rgba(255,255,255,.55);font-size:16px;line-height:1.7}
.products-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.product-card{position:relative;overflow:hidden;min-height:430px;padding:27px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(255,255,255,.18);border-radius:23px;background:#202d40;transition:.3s;cursor:pointer}.product-card:hover,.product-card:focus{transform:translateY(-8px);outline:none;box-shadow:0 16px 38px rgba(0,0,0,.2)}.product-insta{color:white;background:linear-gradient(135deg,#405de6 0%,#833ab4 29%,#c13584 53%,#e1306c 70%,#f56040 86%,#fcaf45 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}.product-insta::before{content:"";position:absolute;width:310px;height:310px;right:-110px;top:-115px;border:55px solid rgba(255,255,255,.13);border-radius:50%}.product-insta .product-top,.product-insta>div:last-child{position:relative;z-index:1}.product-insta .product-top b{background:rgba(255,255,255,.12);backdrop-filter:blur(5px)}.product-insta .product-symbol{color:white;opacity:.16}.product-audit{color:var(--ink);background:#b9dfca}.product-canva{color:var(--ink);background:#f49a7b}.product-coaching{color:white;background:#3154d8}.product-top{display:flex;justify-content:space-between;align-items:center}.product-top span{font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.product-top b{width:40px;height:40px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%}.product-symbol{position:absolute;right:-35px;top:55px;font:800 190px/.8 "Manrope";opacity:.12;transform:rotate(8deg)}.product-card p{margin:0 0 9px;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;opacity:.65}.product-card h3{margin:0 0 24px;font:800 clamp(34px,3.3vw,50px)/.92 "Manrope";letter-spacing:-3px}.product-card>div>strong{font:800 23px "Manrope"}.product-card>div>strong small{font-size:11px}
.product-pay-chip{width:max-content;margin-top:15px;padding:8px 11px;display:block;border:1px solid currentColor;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.7px;text-transform:uppercase}
.product-dialog{width:min(1060px,calc(100% - 24px));max-height:92vh;padding:0;border:0;border-radius:24px;background:white}.product-dialog::backdrop{background:rgba(10,18,31,.8);backdrop-filter:blur(7px)}.product-dialog-shell{position:relative;min-height:700px;display:grid;grid-template-columns:.72fr 1.4fr}.product-dialog-close{position:absolute;z-index:6;right:20px;top:18px;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:white;font-size:25px;cursor:pointer}.product-dialog-visual{padding:35px;display:flex;flex-direction:column;justify-content:space-between;border-right:2px solid var(--ink);background:#b9dfca}.product-dialog-visual.audit{background:#b9dfca}.product-dialog-visual.canva{background:#f49a7b}.product-dialog-visual.coaching{color:white;background:#3154d8}.product-dialog-visual>span{font:800 72px "Manrope";opacity:.18}.product-dialog-visual>div{margin:auto;font:800 140px "Manrope";opacity:.75}.product-dialog-visual>p{font-size:9px;font-weight:800;letter-spacing:1.6px}.product-dialog-content{overflow-y:auto;padding:55px 60px}.product-dialog-kicker{margin:0 0 12px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.product-dialog-content>h2{max-width:650px;margin:0;font:800 clamp(38px,4vw,57px)/1 "Manrope";letter-spacing:-3px}.product-dialog-intro{max-width:680px;color:var(--muted);font-size:14px;line-height:1.65}.product-dialog-meta{margin:25px 0;padding:18px 20px;display:flex;align-items:center;gap:16px;border-radius:13px;background:var(--cream)}.product-dialog-meta strong{font:800 30px "Manrope"}.product-dialog-meta span{padding-left:16px;border-left:1px solid var(--line);font-size:11px;font-weight:700}.product-dialog-details{display:grid;grid-template-columns:1fr 1fr;gap:18px}.product-dialog-details section{padding:18px;border:1px solid var(--line);border-radius:13px}.product-dialog-details section>span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.product-dialog-details ul{margin:13px 0 0;padding-left:17px;color:var(--muted);font-size:12px;line-height:1.65}.product-dialog-content form{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}.product-dialog-content label{display:block;margin-bottom:13px;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.product-dialog-content input,.product-dialog-content textarea{width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:9px;background:var(--cream);outline:none}.product-dialog-content input:focus,.product-dialog-content textarea:focus{border-color:var(--ink)}.product-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.product-dialog-content form>.button{width:100%;justify-content:space-between;box-shadow:3px 3px 0 var(--ink)}.product-dialog-content .form-status{color:#a33e32}.product-dialog-content .form-status.success{color:#287444}

.founder {
  display: grid; grid-template-columns: .88fr 1.12fr; gap: 100px; align-items: center;
  background: #e9e4d7;
}
.founder-visual { position: relative; padding: 25px 25px 85px 0; }
.founder-portrait {
  position: relative; overflow: hidden; min-height: 610px;
  border: 2px solid var(--ink); border-radius: 180px 24px 180px 24px;
  color: var(--ink); background: var(--yellow); box-shadow: 11px 11px 0 var(--ink);
}
.founder-portrait::before {
  content: ""; position: absolute; width: 440px; height: 440px; left: -190px; top: 48px;
  border: 55px solid rgba(255,255,255,.48); border-radius: 50%;
}
.founder-portrait::after {
  content: ""; position: absolute; right: -75px; bottom: -95px; width: 270px; height: 270px;
  border: 2px solid var(--ink); border-radius: 50%; background: #3154d8;
}
.founder-initials {
  position: absolute; z-index: 2; left: 50%; top: 47%; transform: translate(-50%,-50%) rotate(-5deg);
  font: 800 clamp(130px,15vw,220px)/.8 "Manrope"; letter-spacing: -22px;
}
.founder-smile {
  position: absolute; z-index: 3; left: 50%; top: 62%; width: 112px; height: 58px;
  transform: translateX(-50%); overflow: hidden;
}
.founder-smile::before {
  content: ""; position: absolute; left: 0; top: -60px; width: 104px; height: 90px;
  border: 10px solid var(--ink); border-radius: 50%;
}
.founder-stamp {
  position: absolute; z-index: 4; right: 24px; top: 27px;
  width: 104px; height: 104px; display: grid; place-items: center;
  border: 2px solid var(--ink); border-radius: 50%; background: var(--white);
  box-shadow: 5px 5px 0 var(--ink); font-size: 10px; font-weight: 800;
  line-height: 1.25; text-align: center; text-transform: uppercase;
}
.founder-caption {
  position: absolute; z-index: 4; left: 29px; bottom: 26px;
  font-size: 9px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase;
}
.founder-note {
  position: absolute; z-index: 5; right: -35px; bottom: 28px; width: 285px;
  padding: 20px; border: 2px solid var(--ink); border-radius: 14px;
  background: var(--white); box-shadow: 6px 6px 0 var(--ink); transform: rotate(2deg);
}
.founder-note span { display: block; margin-bottom: 7px; color: var(--muted); font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px; }
.founder-note strong { font: 700 16px/1.35 "Manrope"; }
.founder-copy h2 {
  margin: 0 0 29px; font: 800 clamp(45px,5vw,72px)/1 "Manrope"; letter-spacing: -4px;
}
.founder-copy h2 span { position: relative; z-index: 1; }
.founder-copy h2 span::after {
  content: ""; position: absolute; z-index: -1; left: -3px; right: -7px; bottom: 4px;
  height: 17px; border-radius: 2px; background: var(--yellow); transform: rotate(-1deg);
}
.founder-copy > p { max-width: 680px; margin: 0 0 17px; color: #5f6874; font-size: 15px; line-height: 1.75; }
.founder-copy .founder-lead { color: var(--ink); font-size: 18px; line-height: 1.7; }
.founder-quote {
  margin: 28px 0; padding: 22px 0 22px 26px; border-left: 5px solid var(--yellow);
  font: 600 21px/1.45 "Manrope"; letter-spacing: -.7px;
}
.founder-signature { display: flex; align-items: center; gap: 18px; }
.signature-mark { min-width: 95px; font: italic 31px/1 Georgia,serif; transform: rotate(-6deg); }
.founder-signature strong, .founder-signature span { display: block; }
.founder-signature strong { font: 700 14px "Manrope"; }
.founder-signature span { margin-top: 3px; color: var(--muted); font-size: 11px; }

.work {
  display: grid; grid-template-columns: .8fr 1fr 1fr; gap: 25px; align-items: start;
  color: white; background: #151515;
}
.work-intro { position: sticky; top: 30px; padding-right: 30px; }
.work h2 { font-size: clamp(42px, 4vw, 60px); }
.button-outline { margin-top: 40px; color: white; background: transparent; border-color: white; box-shadow: 4px 4px 0 white; font-size: 13px; }
.project { min-width: 0; }
.project-two { margin-top: 150px; }
.project-tag { display: inline-block; margin-bottom: 13px; color: rgba(255,255,255,.52); font-size: 11px; text-transform: uppercase; letter-spacing: 1px; }
.project-art { height: 465px; overflow: hidden; border-radius: 22px; transition: transform .35s; }
.project:hover .project-art { transform: translateY(-8px); }
.art-one { position: relative; background: var(--yellow); color: var(--ink); }
.art-one::after { content: ""; position: absolute; width: 350px; height: 350px; right: -180px; top: 50px; border: 38px solid white; border-radius: 50%; opacity: .65; }
.art-one strong { position: absolute; left: 32px; bottom: 15px; font: 800 300px/.8 "Manrope"; letter-spacing: -35px; }
.art-one em { position: absolute; z-index: 2; right: 30px; top: 30px; font: 700 30px/1 "Manrope"; font-style: normal; text-align: right; }
.art-two { position: relative; display: grid; place-items: center; background: #f49875; color: #231a18; }
.art-two .smile { position: absolute; right: 20px; top: -100px; font: 400 450px/1 Georgia; transform: rotate(15deg); opacity: .22; }
.art-two p { position: relative; margin: 0; font: 500 32px/1.15 "Manrope"; text-align: center; }
.art-two b { font-size: 41px; }
.project h3 { margin: 18px 0 0; font: 600 18px/1.45 "Manrope"; }

.numbers { display: grid; grid-template-columns: repeat(4, 1fr); color: var(--ink); background: var(--yellow); }
.number { min-height: 220px; padding: 44px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(16,27,45,.18); }
.number strong { font: 800 64px/1 "Manrope"; letter-spacing: -4px; }
.number span { margin-top: 12px; font-size: 13px; font-weight: 700; }
.testimonial { position: relative; text-align: center; background: var(--white); }
.quote-mark { position: absolute; left: 50%; top: 42px; transform: translateX(-50%); color: var(--yellow); font: 200px/1 Georgia; opacity: .8; }
blockquote { position: relative; margin: 0; font: 600 clamp(34px, 4vw, 60px)/1.18 "Manrope"; letter-spacing: -3px; }
blockquote span { color: #b6b2a8; }
.testimonial > p { margin: 30px 0 0; color: var(--muted); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }

.major-references{overflow:hidden;background:#e9e4d7}.major-references-heading{margin-bottom:50px;display:grid;grid-template-columns:1.05fr .75fr;gap:75px;align-items:end}.major-references-heading h2,.faq-heading h2{margin:0;font:800 clamp(44px,5vw,68px)/1 "Manrope";letter-spacing:-4px}.major-references-heading h2 span,.faq-heading h2 span{color:#a9a59b}.major-references-heading>p{margin:0;color:var(--muted);font-size:15px;line-height:1.7}.major-reference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.major-reference{min-height:220px;padding:24px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:17px;background:white}.major-reference span{color:#9a7350;font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.major-reference h3{margin:auto 0 10px;font:700 20px/1.15 "Manrope";letter-spacing:-.7px}.major-reference p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.works-logo-showcase{margin-top:42px;padding-top:24px;border-top:1px solid rgba(16,27,45,.16)}.works-logo-heading{margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:20px}.works-logo-heading span{font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase}.works-logo-heading small{color:var(--muted);font-size:9px}.works-logo-marquee{position:relative;width:100vw;margin-left:calc(50% - 50vw);overflow:hidden}.works-logo-marquee::before,.works-logo-marquee::after{content:"";position:absolute;z-index:3;top:0;bottom:0;width:max(45px,8vw);pointer-events:none}.works-logo-marquee::before{left:0;background:linear-gradient(90deg,#e9e4d7,transparent)}.works-logo-marquee::after{right:0;background:linear-gradient(-90deg,#e9e4d7,transparent)}.works-logo-track{width:max-content;display:flex;animation:works-logo-scroll 95s linear infinite}.works-logo-marquee:hover .works-logo-track{animation-play-state:paused}.works-logo-set{display:flex;align-items:center;gap:12px;padding-right:12px}.works-logo-set figure{width:160px;height:118px;margin:0;padding:16px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(16,27,45,.11);border-radius:13px;background:rgba(255,255,255,.72)}.works-logo-set img{display:block;max-width:122px;max-height:78px;width:auto;height:auto;object-fit:contain;object-position:center;filter:grayscale(1) contrast(1.08);mix-blend-mode:multiply;opacity:.72;transition:.25s}.works-logo-set figure:hover img{opacity:1;transform:scale(1.04)}@keyframes works-logo-scroll{to{transform:translateX(-50%)}}
.faq{display:grid;grid-template-columns:.7fr 1fr;gap:90px;background:var(--white)}.faq-heading{align-self:start;position:sticky;top:35px}.faq-heading>p{max-width:430px;color:var(--muted);line-height:1.65}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding:24px 0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;font:700 16px "Manrope";cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary i{width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-style:normal;transition:.2s}.faq-list details[open] summary i{color:white;background:var(--ink);transform:rotate(45deg)}.faq-list details p{margin:-7px 55px 25px 0;color:var(--muted);font-size:13px;line-height:1.7}

.contact { display: grid; grid-template-columns: 1fr .8fr; gap: 100px; color: white; background: var(--ink); }
.contact-copy > p { max-width: 550px; color: rgba(255,255,255,.55); font-size: 17px; line-height: 1.7; }
.contact-details { margin-top: 55px; display: flex; flex-direction: column; gap: 11px; font-size: 15px; font-weight: 700; }
.contact-details span { color: rgba(255,255,255,.4); font-weight: 400; }
.contact-form { display: flex; flex-direction: column; gap: 24px; }
.contact-form label span { display: block; margin-bottom: 8px; color: rgba(255,255,255,.55); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }
.contact-form input, .contact-form select, .contact-form textarea {
  width: 100%; padding: 13px 0; border: 0; border-bottom: 1px solid rgba(255,255,255,.25);
  outline: none; color: white; background: transparent; resize: vertical;
}
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--yellow); }
.contact-form option { color: var(--ink); }
.contact-form ::placeholder { color: rgba(255,255,255,.35); }
.button-white { margin-top: 12px; align-self: flex-start; color: var(--ink); background: white; border-color: white; box-shadow: 4px 4px 0 var(--yellow); cursor: pointer; }
.button-white:disabled { opacity: .55; cursor: wait; }
.form-status { min-height: 22px; margin: 0; font-size: 13px; font-weight: 700; }
.form-status.success { color: var(--yellow); }
.form-status.error { color: #ff9f89; }

footer {
  min-height: 160px; padding: 50px max(32px, calc((100vw - 1220px) / 2));
  display: grid; grid-template-columns: 140px 1fr 1fr auto; align-items: center; gap: 30px;
  background: var(--yellow);
}
.footer-brand { font-size: 24px; }
footer p, footer > span { font-size: 12px; }
.footer-links { display: flex; gap: 25px; justify-content: center; font-size: 12px; font-weight: 700; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .1s; }
.delay-2 { transition-delay: .2s; }
.delay-3 { transition-delay: .3s; }

@media (max-width: 1000px) {
  .site-header { grid-template-columns: 1fr auto; }
  .desktop-nav, .header-cta { display: none; }
  .menu-button { width: 46px; height: 46px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; border: 1px solid var(--line); border-radius: 50%; }
  .menu-button span { width: 19px; height: 2px; background: var(--ink); transition: .2s; }
  .site-header.menu-open {
    position: fixed;
    inset: 0;
    height: 100vh;
    align-items: start;
    padding-top: 24px;
    background: var(--yellow);
  }
  .site-header.menu-open .desktop-nav {
    position: absolute;
    inset: 106px 0 0;
    padding: 55px 32px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    background: var(--yellow);
  }
  .site-header.menu-open .menu-button { position: absolute; top: 29px; right: max(32px, calc((100vw - 1220px) / 2)); }
  .site-header.menu-open .desktop-nav a { font: 700 35px "Manrope"; }
  .site-header.menu-open .menu-button span:first-child { transform: translateY(4px) rotate(45deg); }
  .site-header.menu-open .menu-button span:last-child { transform: translateY(-5px) rotate(-45deg); }
  .hero { grid-template-columns: 1fr; }
  .hero-copy { max-width: 760px; }
  .hero-visual { margin-top: 30px; }
  .section-heading { gap: 35px; }
  .steps, .service-grid { grid-template-columns: repeat(2, 1fr); }
  .step:nth-child(3) { border-left: 1px solid rgba(255,255,255,.14); }
  .service-card:nth-child(2) { border-right: 0; }
  .service-card { border-bottom: 1px solid var(--line); }
  .products-grid{grid-template-columns:1fr 1fr}.product-card{min-height:400px}
  .founder { gap: 55px; }
  .founder-portrait { min-height: 520px; }
  .founder-note { right: -15px; }
  .work { grid-template-columns: 1fr 1fr; }
  .work-intro { position: static; grid-column: 1 / -1; margin-bottom: 30px; }
  .project-two { margin-top: 70px; }
  .contact { grid-template-columns: 1fr; gap: 70px; }
  .major-references-heading{grid-template-columns:1fr;gap:24px}.major-reference-grid{grid-template-columns:1fr 1fr}.faq{grid-template-columns:1fr;gap:45px}.faq-heading{position:static}
  footer { grid-template-columns: 100px 1fr auto; }
  footer p { display: none; }
}
@media(max-width:700px){.happy-wheel-game{min-height:480px;padding:18px}.prize-wheel-wrap{width:310px;height:310px}.prize-wheel{width:290px;height:290px}.prize-wheel>span{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-97px) rotate(var(--counter-angle));width:80px}.wheel-spin{width:88px;height:88px}.wheel-spin span{font-size:23px}.giveaway-dialog form{padding:22px;grid-template-columns:1fr}.giveaway-prize{grid-row:auto;min-height:230px;padding:24px}.giveaway-prize::before{font-size:70px}.giveaway-form-copy{padding-right:35px}.giveaway-form-copy h2{font-size:29px}.giveaway-success{padding:40px 24px}}

@media (max-width: 660px) {
  .section-pad { padding: 82px 22px; }
  .site-header { height: 86px; padding: 0 22px; }
  .brand { font-size: 25px; width: 78px; }
  .site-header.menu-open { padding-top: 17px; }
  .site-header.menu-open .desktop-nav { inset: 86px 0 0; }
  .site-header.menu-open .menu-button { top: 20px; right: 22px; }
  .hero { min-height: auto; padding-top: 58px; gap: 26px; }
  .hero h1 { font-size: 48px; letter-spacing: -3.5px; }
  .hero-lead { font-size: 17px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 26px; }
  .hero-proof { margin-top: 34px; }
  .hero-visual { min-height: 420px; }
  .happy-sculpture { height: 430px; box-shadow: 7px 7px 0 var(--ink); }
  .smile-object { width: 245px; height: 245px; }
  .eye { top: 67px; width: 23px; height: 31px; }
  .eye-left { left: 62px; }
  .eye-right { right: 62px; }
  .smile-cut { bottom: 49px; width: 118px; height: 62px; }
  .smile-cut::before { top: -66px; width: 113px; height: 104px; border-width: 10px; }
  .creative-label { right: 8px; top: 18px; }
  .idea-card { left: 12px; bottom: 18px; }
  .blue-orb { left: 24px; top: 38px; width: 48px; height: 48px; }
  .chrome-one { width: 58px; height: 58px; right: 25px; }
  .logo-strip { min-height: 130px; }
  .ticker { width: max-content; padding: 0 25px; animation: marquee 18s linear infinite; }
  @keyframes marquee { to { transform: translateX(-25%); } }
  .section-heading { grid-template-columns: 1fr; margin-bottom: 50px; }
  .section-heading h2, .work h2, .contact h2 { font-size: 44px; letter-spacing: -3px; }
  .heading-side, .dark-heading .heading-description { justify-self: start; }
  .steps, .service-grid { grid-template-columns: 1fr; }
  .step { min-height: 280px; border-left: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
  .step-icon { margin: 36px 0 25px; }
  .service-card { min-height: 360px; border-right: 0; }
  .service-card h3 { margin-top: 45px; }
  .service-open span { max-width: 75px; }
  .service-dialog { width: calc(100% - 18px); max-height: 94vh; }
  .service-dialog-shell { display: block; }
  .service-dialog-visual { min-height: 220px; border-right: 0; border-bottom: 2px solid var(--ink); }
  .service-visual-symbol { width: 90px; height: 90px; margin: 15px auto; font-size: 39px; }
  .service-dialog-content { padding: 38px 22px 28px; }
  .service-dialog-content > h2 { font-size: 36px; letter-spacing: -2px; }
  .service-detail-grid { grid-template-columns: 1fr; }
  .mini-process { grid-template-columns: 1fr; }
  .mini-process article { min-height: 90px; }
  .mini-process strong { margin-top: 12px; }
  .service-outcome { align-items: stretch; flex-direction: column; }
  .service-outcome .button { align-self: flex-start; }
  .products-heading{grid-template-columns:1fr;gap:25px}.products-grid{grid-template-columns:1fr}.product-card{min-height:380px}.product-dialog-shell{display:block}.product-dialog-visual{min-height:220px;border-right:0;border-bottom:2px solid var(--ink)}.product-dialog-visual>div{font-size:80px}.product-dialog-content{padding:38px 22px}.product-dialog-details,.product-form-row{grid-template-columns:1fr}
  .founder { grid-template-columns: 1fr; gap: 60px; }
  .founder-visual { padding: 0 8px 70px 0; }
  .founder-portrait { min-height: 470px; border-radius: 110px 18px 110px 18px; box-shadow: 7px 7px 0 var(--ink); }
  .founder-initials { font-size: 150px; }
  .founder-note { right: 0; bottom: 8px; width: 255px; }
  .founder-copy h2 { font-size: 44px; letter-spacing: -3px; }
  .founder-copy .founder-lead { font-size: 17px; }
  .founder-quote { font-size: 18px; }
  .work { grid-template-columns: 1fr; }
  .project-two { margin-top: 35px; }
  .project-art { height: 420px; }
  .numbers { grid-template-columns: 1fr 1fr; }
  .number { min-height: 160px; padding: 26px; border-bottom: 1px solid rgba(16,27,45,.18); }
  .number strong { font-size: 48px; }
  blockquote { font-size: 34px; letter-spacing: -2px; }
  .contact { gap: 55px; }
  .major-reference-grid{grid-template-columns:1fr}.major-reference{min-height:180px}.works-logo-heading small{display:none}.works-logo-set figure{width:125px;height:94px;padding:13px}.works-logo-track{animation-duration:72s}.faq-list summary{font-size:14px}.faq-list details p{margin-right:0}
  footer { grid-template-columns: 1fr auto; padding: 35px 22px; }
  .footer-links { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
  .works-logo-marquee{overflow-x:auto}.works-logo-set[aria-hidden="true"]{display:none}
}

/* Paiement après réservation d’un produit */
.product-payment-panel{margin-top:25px;padding-top:24px;border-top:1px solid var(--line)}.product-payment-success{width:52px;height:52px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--yellow);box-shadow:3px 3px 0 var(--ink);font-size:21px;font-weight:800}.product-payment-panel h3{margin:15px 0 5px;font:800 28px "Manrope";letter-spacing:-1.5px}.product-payment-panel>p:not(.product-dialog-kicker){color:var(--muted);font-size:12px}.product-payment-methods{margin:20px 0 12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.product-payment-method{padding:18px;border:1px solid var(--line);border-radius:13px;background:var(--cream)}.product-payment-method>span{font-size:9px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.product-payment-method h4{margin:12px 0 5px;font:700 16px "Manrope"}.product-payment-method p{margin:0 0 10px;color:var(--muted);font-size:11px}.product-payment-method code{padding:10px;display:block;overflow-wrap:anywhere;border-radius:8px;background:white;font:700 12px "DM Sans"}.product-payment-method small{display:block;margin-top:10px;color:var(--muted);font-size:9px;line-height:1.5}.product-payment-method.paypal{color:white;background:#003087}.product-payment-method.paypal p,.product-payment-method.paypal small{color:rgba(255,255,255,.7)}.product-payment-method.paypal a{margin-top:12px;padding:11px 13px;display:flex;justify-content:space-between;border-radius:8px;color:#003087;background:#ffc439;font-size:11px;font-weight:800}.product-payment-panel>small{color:var(--muted);font-size:9px}@media(max-width:600px){.product-payment-methods{grid-template-columns:1fr}}
