/* One continuous dark opening: navigation, hero and its proof. */
body>header{background:#09090c;border-bottom:0;box-shadow:none}
#home.hero-service-hero{background:#09090c}
.impact.section{background:#09090c;padding-top:34px}
#home.hero-service-hero .hero-intro{container-type:inline-size;min-width:0}
#home.hero-service-hero h1{font-size:clamp(28px,3.8vw,68px);font-size:clamp(28px,10cqw,68px)}
#home.hero-service-hero .turn-prefix{white-space:nowrap;max-width:none}
#home.hero-service-hero .hero-offer{font-size:18px;line-height:1.6;margin-top:28px;max-width:none;color:#eee7f1}
#home .hero-agency{font-size:17px;line-height:1.6;color:#b8acbf;max-width:490px;margin:12px 0 0}
#home .hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px}
#home .hero-action{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:50px;padding:12px 23px;border-radius:999px;border:1px solid transparent;font-size:16px;line-height:1.35;text-decoration:none;transition:background .2s,color .2s,border-color .2s,transform .2s}
#home .hero-action-primary{background:#f2d037;color:#101012;border-color:#f2d037}
#home .hero-action-secondary{background:transparent;color:#e8deed;border-color:#a589b15e}
#home .hero-action-primary:hover{background:#ffe15b;transform:translateY(-2px)}
#home .hero-action-secondary:hover{border-color:#e5d3ee;background:#ffffff07;transform:translateY(-2px)}
#home .hero-action:focus-visible{outline:2px solid #f2d037;outline-offset:5px}

/* A thin, reversible silver coin: Marek on one face, MS Studio on the other. */
.portrait-coin{--coin-turn:0deg;--coin-hover:0deg;position:relative;display:block;width:100%;aspect-ratio:1;margin:0;padding:0;background:transparent;border:0;border-radius:50%;perspective:1100px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;outline-offset:9px}
.portrait-coin:focus-visible{outline:2px solid #f2d037}
.coin-body{position:absolute;inset:0;display:block;transform-style:preserve-3d;transform:rotateX(3deg) rotateY(calc(var(--coin-turn) + var(--coin-hover)));transition:transform .95s cubic-bezier(.22,.75,.18,1);pointer-events:none}
.portrait-coin:hover{--coin-hover:-9deg}
.coin-face,.coin-lamella{position:absolute;inset:0;display:block;border-radius:50%;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:none}
.coin-lamella{background:#211b28;border:1.6px solid #ab9eb5;transform:translateZ(var(--coin-z));backface-visibility:visible;box-shadow:inset 0 1px #f5ebff8c}
.coin-face{overflow:hidden;border:1px solid #dbc9e6a6;box-shadow:inset 0 0 0 2px #ffffff14,0 16px 38px #0005}
.coin-front{transform:translateZ(3.5px);background:#0c0b10}
.coin-front img{display:block!important;width:100%!important;height:100%!important;max-width:none;object-fit:cover;border:0!important;border-radius:50%;user-select:none}
.coin-back{transform:rotateY(180deg) translateZ(3.5px);display:grid;place-items:center;background:radial-gradient(ellipse at 30% 20%,#50435755,transparent 62%),#100e14}
.coin-face:after{content:'';position:absolute;inset:-15%;background:linear-gradient(110deg,transparent 32%,#fff0 42%,#fff1 49%,transparent 58%);transform:translateX(-14%);transition:transform .95s ease;pointer-events:none}
.portrait-coin.is-flipped .coin-face:after{transform:translateX(20%)}
.coin-logo.logo{display:flex;flex-direction:column;gap:19px;justify-content:center;align-items:center;width:59%;height:auto;color:#fff;letter-spacing:0}
.coin-logo.logo svg{width:100%;height:auto;max-height:none}
.coin-logo.logo .studio-label{width:100%;font:500 19px/1 'DM Sans',sans-serif;color:#fff;letter-spacing:0}

/* Connections appear only as the wheel moves; the idle board stays clear. */
#creative-lab .thinking-connections{z-index:9;pointer-events:none;opacity:0;transition:opacity .16s ease-out}
#creative-lab.is-turning .thinking-connections{opacity:1;transition:opacity .06s linear}
#creative-lab .thinking-connections path:not(.active-path){display:none}
#creative-lab .thinking-connections .active-path{stroke:#dec4f2;stroke-width:1.4}
#creative-lab .thinking-connections circle{fill:#f2d037}

/* Purposeful service pictures with a little more physical movement. */
#services .service-visual{width:100%;min-width:0;aspect-ratio:1.12;min-height:300px;max-height:none;perspective:1100px;touch-action:pan-y;isolation:isolate;background:radial-gradient(ellipse at 50% 30%,#59366942,transparent 76%),#18131e;border-color:#a084b64f}
#services .service-visual-inner{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--service-rx,0deg)) rotateY(var(--service-ry,0deg));transition:transform .35s ease;pointer-events:none}
#services .service-float{animation:service-card-drift 7s ease-in-out infinite;will-change:translate}
#services .service-visual:not(.is-visible) .service-float,#services .service-visual.is-paused .service-float{animation-play-state:paused}
#services .service-tag{left:18px;right:16px;bottom:16px;font-size:13px;letter-spacing:.3px;color:#c9b4d5;z-index:5}
#services .service-feature>p{line-height:1.75}
#services .service-feature>p strong{font-weight:500;color:#efe6f5}
.platform-card{position:absolute;width:42%;height:39%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:13px;border:1px solid #d6bde96e;border-radius:12px;background:linear-gradient(140deg,#95829d44,#17111de8);box-shadow:inset 0 1px #ffffff30,0 15px 25px #0005;transform-style:preserve-3d}
.platform-logo{display:block;width:60px;height:55px;color:#f3edf7}
.platform-card strong{font-size:16px;line-height:1.1;font-weight:500;color:#e8def0;letter-spacing:-.2px}
.platform-meta{left:6%;top:7%;transform:rotateY(15deg) rotateZ(-12deg) translateZ(15px)}
.platform-google{left:51%;top:12%;transform:rotateY(-16deg) rotateZ(9deg) translateZ(35px);animation-delay:-2.1s!important;background:linear-gradient(130deg,#60505f66,#100d15f2)}
.platform-linkedin-in{left:12%;top:47%;transform:rotateY(13deg) rotateZ(-6deg) translateZ(35px);animation-delay:-4.3s!important;background:linear-gradient(140deg,#75618580,#201526ec)}
.platform-reddit-alien{left:51%;top:51%;transform:rotateY(-15deg) rotateZ(12deg) translateZ(16px);animation-delay:-1.3s!important}
.platform-meta{border-color:#e0cb6e80;background:linear-gradient(130deg,#5f522d66,#1a141cf2)}
.platform-meta .platform-logo{color:#f1d960}
.service-image-plate{position:absolute;overflow:hidden;border:1px solid #e2cce7a0;border-radius:11px;box-shadow:inset 0 1px #ffffff44,0 20px 35px #0006;background:#100d15;transform-style:preserve-3d}
.service-image-plate img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.creative-image-plate{left:10%;top:10%;width:80%;height:71%;transform:rotateY(-16deg) rotateZ(-8deg) translateZ(30px);animation-delay:-1.5s!important}
.creative-image-plate:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a080cb0,transparent 60%)}
.creative-image-plate>span{position:absolute;left:19px;bottom:18px;font-size:27px;font-style:italic;letter-spacing:-1px;color:#fff;z-index:2}
.creative-palette{position:absolute;right:7%;bottom:16%;display:flex;padding:8px;gap:5px;border:1px solid #d7c1e180;border-radius:7px;background:#36263fe6;box-shadow:0 10px 25px #0007;transform:rotateY(-15deg) rotateZ(10deg) translateZ(65px);animation-delay:-3.3s!important}
.creative-palette i{width:22px;height:43px;border-radius:2px;background:#f2d037}.creative-palette i:nth-child(2){background:#aa82c8}.creative-palette i:nth-child(3){background:#100d15}
.media-image-plate{left:10%;top:16%;width:80%;height:65%;transform:rotateY(15deg) rotateZ(7deg) translateZ(10px);animation-delay:-2.5s!important}
.media-image-plate img{opacity:.92}
.strategy-links{position:absolute;inset:0;width:100%;height:100%;transform:translateZ(55px);overflow:visible}
.strategy-links path{fill:none;stroke:#cbb0db9c;stroke-width:1.2}.strategy-links circle{fill:#f2d037}
.strategy-chip{position:absolute;padding:12px 15px;border:1px solid #d7bfe98a;border-radius:7px;background:linear-gradient(135deg,#877195c9,#292031ed);box-shadow:0 12px 25px #0005;color:#f1e8f6;font-size:17px;line-height:1.2;letter-spacing:-.3px;transform:rotateY(-12deg) rotateZ(-5deg) translateZ(70px)}
.strategy-research{left:10%;top:10%;animation-delay:-.8s!important}.strategy-message{right:12%;top:42%;animation-delay:-3.1s!important;transform:rotateY(15deg) rotateZ(5deg) translateZ(85px)}.strategy-channels{left:24%;bottom:17%;animation-delay:-5s!important;transform:rotateY(-15deg) rotateZ(-7deg) translateZ(90px);border-color:#e3ce718c}
@keyframes service-card-drift{0%,100%{translate:0 7px}50%{translate:0 -10px}}
@media(max-width:1100px) and (min-width:701px){
 #services .service-showcase{gap:25px}
 #services .service-visual{min-height:270px}
 .platform-logo{width:47px;height:44px}.platform-card{gap:10px}.platform-card strong{font-size:14px}
 .strategy-chip{font-size:15px;padding:10px 12px}
}
@media(max-width:700px){
 #home.hero-service-hero .hero-offer{font-size:17px;line-height:1.55;margin-top:23px}
 #home .hero-agency{font-size:16px;line-height:1.6;margin-top:12px}
 #home .hero-actions{gap:10px;margin-top:25px}
 #home .hero-action{min-height:47px;padding:12px 18px;font-size:15px;gap:19px}
 #services .service-visual{min-height:290px;aspect-ratio:1.15}
 #services .service-tag{font-size:13px}
 .coin-logo.logo .studio-label{font-size:16px}.coin-logo.logo{gap:16px}
}
@media(max-width:360px){
 #home .hero-action{font-size:14px;gap:15px;padding:12px 15px}
}
@media(prefers-reduced-motion:reduce){
 .coin-body,.coin-face:after,#services .service-visual-inner,#home .hero-action{transition:none!important}
 #services .service-float{animation:none!important;will-change:auto}
}

/* Full client artwork, a confidential result, and quiet credential stamps. */
#work .projects{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
#work .project{min-width:0;align-self:start}
#work .case-art{aspect-ratio:1.62;background:#100d16}
#work .case-art img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;transform:none;filter:none}
#work .case-art>svg{display:block;position:absolute;inset:0;width:100%;height:100%}
#work .case-type{display:none}
#work .project-info h3{font-size:24px}
#work .project-info span{font-size:15px;line-height:1.55}
#work .case-result{font-size:16px;line-height:1.6;display:block;color:#584260}
#project-dialog{max-height:90svh;overflow-y:auto}
#project-dialog #dialog-image{display:block;width:100%;height:auto;aspect-ratio:1.62;object-fit:contain;background:#100d16;border-radius:5px;margin:26px 0}
#project-dialog #dialog-image[hidden],#project-dialog #dialog-result-note[hidden]{display:none}
#project-dialog #dialog-result{font-size:24px;line-height:1.4}
#project-dialog #dialog-result-note{font-size:16px;line-height:1.6;color:#c4b2d0;margin:16px 0 0}
.certifications{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:16px;margin:55px 0 32px}
.certification-stamp{display:flex;align-items:center;gap:12px;min-width:184px;padding:13px 16px;border:1px solid #bca7c650;border-radius:5px;color:#c9bdd1;background:#ffffff03}
.certification-stamp>svg{width:30px;height:30px;flex:none}
.certification-stamp strong{display:block;font-size:15px;line-height:1.4;font-weight:500;color:#e7deed}
.certification-stamp small{display:block;font-size:14px;line-height:1.4;color:#b4a5bf}
.certification-stamp .cert-check{width:20px;height:20px;margin-left:auto;color:#f2d037}
@media(max-width:1050px) and (min-width:701px){#work .projects{gap:24px}#work .project-info h3{font-size:21px}#work .project-info span,#work .case-result{font-size:14px}}
@media(max-width:700px){#work .projects{grid-template-columns:1fr;row-gap:42px}#work .project-info span{font-size:16px}.certifications{justify-content:flex-start;gap:12px;margin-top:40px}.certification-stamp{min-width:0;flex:1 1 150px;padding:12px}.certification-stamp>svg{width:25px;height:25px}.certification-stamp .cert-check{width:16px;height:16px}}

/* Clear evidence cards: readable at every build stage, with aligned data. */
#creative-lab .research-note{opacity:1!important;background:#271f30;border-color:#ad8fbd66;color:#e6d8ed}
#creative-lab .research-note .note-type{color:#d6c1e2;letter-spacing:0;line-height:1.3}
#creative-lab .research-note h3{color:#f2e9f7}
#creative-lab .research-note p,#creative-lab .research-note .sim-insight{color:#d4c2df}
#creative-lab .research-note.note-brief{background:#e2cca3;border-color:#e2cca3;color:#33251a}
#creative-lab .note-brief .note-type{color:#624729}
#creative-lab .note-brief h3{color:#302217}
#creative-lab .note-brief p{color:#4d3825}
#creative-lab .note-brief .brief-decision{color:#3e2a1c}
#creative-lab .sim-key,#creative-lab .gender-strip,#creative-lab .sim-columns span,#creative-lab .sim-horizontal>span,#creative-lab .sim-test-row>span,#creative-lab .sim-rate-grid span,#creative-lab .sim-image-rows b{color:#d4c2df}
#creative-lab .sim-key b,#creative-lab .sim-test-row>b,#creative-lab .sim-columns b,#creative-lab .sim-image-rows strong{color:#f1e5f8}
#creative-lab .sim-test-selected>span,#creative-lab .sim-test-selected>b,#creative-lab .sim-image-rows>span:last-child :is(b,strong){color:#ffe163}
#creative-lab .sim-reject h3{color:#baa5c6}
#creative-lab .sim-big-number>span{color:#cbb5d8}
#creative-lab .sim-colour-top>div>span{color:#cdb7db}
#creative-lab .sim-sample-label{font-size:14px;line-height:1.3;margin:8px 0 0;color:#d4c2df}
#creative-lab .ad-wireframe>div,#creative-lab .draft-product{color:#bda8c9}
#creative-lab .ad-wireframe>i{border-color:#b799cc4d}
#creative-lab .ad-build-marker{color:#d7c2e6;letter-spacing:.5px}

@media(min-width:901px){
 #creative-lab.thinking-lab{scroll-margin-top:-90px;padding-top:28px!important;padding-bottom:20px!important;gap:18px}
 #creative-lab .thinking-heading h2{line-height:1.15}
 #creative-lab .notes-plane{gap:12px}
 #creative-lab .research-note{padding:12px;transform:none!important;border-radius:7px}
 #creative-lab .research-note .note-type{font-size:14px;line-height:1.25;padding-right:8px}
 #creative-lab .research-note h3{font-size:15px;line-height:1.3;margin:8px 0}
 #creative-lab .research-note p{font-size:14px;line-height:1.4;margin:7px 0}
 #creative-lab .research-note .sim-insight{display:none}
 #creative-lab .brief-decision>span{font-size:17px;line-height:1.15}
 #creative-lab .sim-brief h3{font-size:15px;line-height:1.2;margin:6px 0}
 #creative-lab .sim-brief p{font-size:14px;line-height:1.35;margin:6px 0}
 #creative-lab .sim-brief .brief-decision{padding:6px 0 0}
 #creative-lab .sim-brief .brief-decision>span{font-size:16px;line-height:1.15}
 #creative-lab .sim-persona-top{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;margin-top:10px}
 #creative-lab .sim-donut{width:48px;height:48px}
 #creative-lab .sim-donut>b{font-size:24px}
 #creative-lab .sim-donut small{display:none}
 #creative-lab .sim-key{font-size:14px;line-height:1.2;min-width:0;gap:6px}
 #creative-lab .sim-key>span{gap:5px;white-space:normal}
 #creative-lab .sim-key b{font-variant-numeric:tabular-nums;flex:none}
 #creative-lab .gender-strip{font-size:14px;line-height:1.25;margin-top:10px}
 #creative-lab .gender-strip i{display:none}
 #creative-lab .sim-columns{height:44px;margin:13px 0 24px;gap:5px}
 #creative-lab .sim-columns :is(b,span){font-size:14px;letter-spacing:-.5px}
 #creative-lab .sim-columns span{transform:scaleX(.9)}
 #creative-lab .sim-horizontal{gap:10px;margin-top:12px}
 #creative-lab .sim-horizontal>span{display:grid;grid-template-columns:25px minmax(0,1fr) 24px;gap:8px;font-size:14px;height:16px;padding:0}
 #creative-lab .sim-horizontal i{position:relative;left:auto;width:var(--bar);max-width:100%;height:5px}
 #creative-lab .sim-horizontal b{font-size:14px;font-variant-numeric:tabular-nums}
 #creative-lab .sim-interviews h3,#creative-lab .sim-reject h3{font-size:17px}
 #creative-lab .sim-selected-copy{font-size:14px;line-height:1.35}
 #creative-lab .sim-test-row{margin:9px 0;padding-bottom:8px}
 #creative-lab .sim-test-row>span,#creative-lab .sim-test-row>b{font-size:14px;line-height:1.25}
 #creative-lab .sim-rate-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:12px}
 #creative-lab .sim-rate-grid>div{display:flex;align-items:center;justify-content:space-between;gap:8px}
 #creative-lab .sim-rate-grid span{font-size:14px;letter-spacing:0;line-height:1.2;max-width:65px}
 #creative-lab .sim-rate-grid b{font-size:16px;letter-spacing:-.3px;margin:0}
 #creative-lab .sim-rate-grid b>i{font-size:14px}
 #creative-lab .sim-slope{height:30px;margin-top:10px}
 #creative-lab .sim-cta-matrix{grid-template-columns:minmax(0,1fr) 36px 36px;gap:8px 6px;margin:10px 0 0;align-items:center}
 #creative-lab .sim-cta-matrix>span{font-size:14px;color:#d1badd}
 #creative-lab .sim-cta-matrix>span:nth-child(n+2){text-align:right}
 #creative-lab .sim-cta-matrix :is(b,i,strong){font-size:14px;line-height:1.3;font-variant-numeric:tabular-nums}
 #creative-lab .sim-cta-matrix :is(i,strong){text-align:right}
 #creative-lab .sim-image-rows{gap:10px;margin:10px 0}
 #creative-lab .sim-image-rows>span{display:grid;grid-template-columns:17px minmax(0,1fr) 22px;gap:5px;font-size:14px;align-items:center}
 #creative-lab .sim-image-rows b{width:auto;font-size:14px;line-height:1.2}
 #creative-lab .sim-image-rows strong{font-size:16px;text-align:right;font-variant-numeric:tabular-nums}
 #creative-lab .sim-colour-top{gap:9px;align-items:center;margin-top:14px}
 #creative-lab .sim-colour-top .colour-disc{width:30px;height:30px}
 #creative-lab .sim-colour-top b{font-size:25px}
 #creative-lab .sim-colour-top>div>span{font-size:14px;letter-spacing:0;line-height:1.3}
 #creative-lab .sim-colour-swatches{display:none}
 #creative-lab .research-note:is(:hover,:focus){padding:16px}
 #creative-lab .research-note:is(:hover,:focus) .sim-insight{display:block}
 #creative-lab .sim-image-test:is(:hover,:focus) .sim-image-rows small{display:none}
 #creative-lab .sim-image-test:is(:hover,:focus) .sim-image-rows>span{flex-wrap:nowrap}
 #creative-lab .research-note footer{right:8px;top:8px}
 #creative-lab .dial-slot,#creative-lab .creative-wheel-wrap{width:176px!important;height:190px!important}
 #creative-lab .assembled-ad{height:min(440px,calc(100% - 210px))}
 #creative-lab .wheel-hint{bottom:0!important;font-size:14px;line-height:20px}
}
@media(max-width:700px){
 #creative-lab .evidence-board.notes-plane{grid-template-rows:310px 310px}
 #creative-lab .research-note{max-height:none}
 #creative-lab .sim-image-rows>span{display:grid;grid-template-columns:20px minmax(0,1fr) 36px;gap:7px}
 #creative-lab .sim-image-rows b{width:auto}
 #creative-lab .sim-image-rows small{display:none}
 #creative-lab .sim-image-rows strong{text-align:right;font-size:17px}
 #creative-lab .sim-image-test h3{display:none}
}
@media(prefers-reduced-motion:reduce){#creative-lab .thinking-connections{transition:none}}

/* A common content edge from navigation to footer. Backgrounds stay full width. */
:root{--content-width:1600px;--page-gutter:clamp(24px,5vw,88px);--page-inset:max(var(--page-gutter),calc((100% - var(--content-width))/2))}
body>header,#home.hero-service-hero,main>.section,main>.second-experience>.section,#creative-lab.thinking-lab{padding-inline:var(--page-inset)!important}
.campaign-journey .system-heading,.campaign-journey .system-bottom{left:var(--page-inset);right:var(--page-inset)}
.testimonials .quote-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.testimonials .quote-grid figure{display:flex;flex-direction:column;min-width:0;margin:0}
.testimonials .quote-grid blockquote{margin-top:0;flex:1}
.testimonials .quote-stars+blockquote{margin-top:28px}
.testimonials .quote-grid figcaption{margin-top:auto}

/* A sent enquiry ends with one acknowledgement action. */
.enquiry-form[hidden],.enquiry-success[hidden]{display:none!important}
.contact-flow.is-sent .chosen-service{display:none}
.contact-flow.is-sent .service-picker{display:none}
.contact-flow.is-sent .enquiry-reveal{width:100%}
.contact-flow.is-sent .folded-enquiry{padding-top:0}
.enquiry-success{position:relative;z-index:2;min-height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px 24px;color:#292032;outline:none}
.enquiry-success-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid #6b4e8680;border-radius:50%;font-size:27px;line-height:1;color:#62447b;background:#ffffff50;margin-bottom:22px}
.enquiry-success h3{font-size:clamp(32px,3.5vw,46px);line-height:1.1;letter-spacing:-1.5px;margin:0 0 16px;font-weight:500}
.enquiry-success p{font-size:18px;line-height:1.5;margin:0 0 30px;color:#584863}
.enquiry-success button{display:flex;align-items:center;justify-content:center;gap:36px;min-height:48px;min-width:150px;padding:12px 24px;border:1px solid #292032;border-radius:999px;background:#292032;color:#fff;font-size:16px;cursor:pointer}
.enquiry-success button:hover{background:#46314f}
.enquiry-success button:focus-visible{outline:2px solid #6b4e86;outline-offset:5px}
.enquiry-success button span{font-size:20px;line-height:1}
@media(min-width:901px){#creative-lab .notes-plane{grid-template-columns:repeat(2,minmax(0,1fr)) minmax(280px,1.75fr) repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 :root{--page-gutter:24px}
 .testimonials .quote-grid{grid-template-columns:1fr}
 .enquiry-success{min-height:360px;padding:40px 20px}
 .enquiry-success p{font-size:17px}
}

/* The research cards end with their content. The centre keeps room for the dial. */
#creative-lab .built-headline em{display:inline!important}
#creative-lab .ad-sub-lead{white-space:nowrap}
@media(min-width:901px){
 #creative-lab.thinking-lab{height:auto;min-height:0}
 #creative-lab .thinking-stage{height:clamp(570px,calc(100svh - 150px),640px);min-height:0}
 #creative-lab .notes-plane{grid-template-rows:repeat(3,max-content);align-content:start;align-items:start}
 #creative-lab .research-note{height:auto;min-height:0;align-self:start;padding-bottom:13px}
 #creative-lab .research-note:is(:hover,:focus){height:auto;min-height:0}
 #creative-lab .research-note:hover:not(:focus){width:100%!important;max-height:none;padding:12px 12px 13px;outline:none;box-shadow:0 12px 35px #0002}
 #creative-lab .research-note:hover:not(:focus) .sim-insight{display:none}
 #creative-lab .research-note:hover:not(:focus) .note-type{font-size:14px;line-height:1.25}
 #creative-lab .research-note:hover:not(:focus) h3{font-size:15px;line-height:1.3}
 #creative-lab .research-note:hover:not(:focus) p{font-size:14px;line-height:1.4}
 #creative-lab :is(.sim-headlines,.sim-cta,.sim-image-test):hover:not(:focus) h3{display:none}
 #creative-lab :is(.sim-interviews,.sim-reject):hover:not(:focus) h3{font-size:17px}
 #creative-lab .built-headline{width:50%;max-width:50%;letter-spacing:-.7px!important}
 #creative-lab .built-subheadline{width:53%!important;top:61%;font-size:14px;line-height:1.5}
 #creative-lab .ad-product.executive-forecast{left:60%;width:39%}
}

/* Read a real case study as a short story. */
#project-dialog{max-width:820px;padding:38px 42px;scrollbar-width:thin;scrollbar-color:#9c7bb2 #241c2e}
#project-dialog .close{position:sticky;top:0;z-index:3;float:right;min-height:38px;padding:8px 13px;border:1px solid #ad8bb252;border-radius:30px;background:#2b2135;color:#eee3f4}
#project-dialog h2{font-size:40px;margin:16px 0 22px}
#project-dialog #dialog-image{max-height:240px;aspect-ratio:auto;margin:22px 0 30px;object-fit:contain}
.case-story{display:grid;gap:25px;margin-top:25px}
.case-story section{position:relative;padding:0 0 23px 43px;border-bottom:1px solid #b58cca33}
.case-story section:last-child{border:0;padding-bottom:0}
.case-story .case-step{position:absolute;left:0;top:3px;font-size:13px;line-height:1.4;color:#c7a8d9}
.case-story h3{font-size:20px;letter-spacing:-.4px;line-height:1.3;font-weight:500;margin:0 0 10px}
#project-dialog .case-story p{max-width:none;font-size:17px;line-height:1.65;margin:0;color:#d1bfdc}
#project-dialog .case-story #dialog-result{margin:0;padding:0;border:0;font-size:25px;line-height:1.4;color:#f3d451}
#project-dialog .case-story #dialog-result-note{font-size:16px;margin-top:12px;color:#d1bfdc}

/* Private feedback, placed directly after the client quotes. */
.feedback-invitation{display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap;margin-top:44px;padding-top:30px;border-top:1px solid #82688f33}
.feedback-invitation p{font-size:17px;margin:0;color:#594263}
.feedback-toggle,.feedback-close{border:0;background:none;cursor:pointer;color:#34213f}
.feedback-toggle{display:flex;align-items:center;gap:24px;padding:12px 18px;border:1px solid #8f719e70;border-radius:30px;font-size:16px}
.feedback-toggle:hover{background:#ffffff50}
.client-feedback[hidden],.feedback-success[hidden],#feedback-form[hidden]{display:none!important}
.client-feedback{max-width:820px;margin:35px auto 0;padding:32px;border:1px solid #9d82ad55;border-radius:10px;background:#ffffff35;color:#302039}
.feedback-form-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.feedback-form-heading h3,.feedback-success h3{font-size:29px;line-height:1.2;letter-spacing:-.8px;margin:0}
.feedback-close{font-size:14px;padding:8px}
.feedback-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.feedback-fields label{font-size:15px;line-height:1.5;display:grid;gap:8px}
.feedback-fields label>span{color:#6c5879}
.feedback-fields input,.feedback-fields textarea{width:100%;border:1px solid #a58ab46e;border-radius:4px;background:#fffc;color:#2c1c35;padding:12px;font:inherit;font-size:16px;line-height:1.5}
.feedback-fields input:focus,.feedback-fields textarea:focus{outline:2px solid #9470aa;outline-offset:2px}
.feedback-full{grid-column:1/-1}
.feedback-permission{display:flex;align-items:flex-start;gap:9px;font-size:14px;line-height:1.5;margin:20px 0}
.feedback-permission input{margin-top:4px;accent-color:#6c4682}
.feedback-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.feedback-actions button,.feedback-done{display:flex;align-items:center;justify-content:space-between;gap:30px;border:0;border-radius:30px;padding:13px 23px;min-height:47px;background:#2e1f37;color:#fff;font-size:16px;cursor:pointer}
.feedback-actions button:disabled{opacity:.55;cursor:wait}
.feedback-status{font-size:15px;line-height:1.5;margin:0;max-width:400px}
.feedback-success{text-align:center;padding:38px 15px}
.feedback-success p{font-size:17px;line-height:1.5;margin:14px 0 26px}
.feedback-done{margin:auto}

/* Useful answers without another wall of text. */
.faq.section{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;background:#141017;padding-top:110px;padding-bottom:110px}
.faq-heading .eyebrow{color:#c6aed5}
.faq-heading h2{font-size:clamp(40px,4.8vw,68px);line-height:1.08;letter-spacing:-2.3px;margin:24px 0 0}
.faq-list{border-top:1px solid #a385b14d}
.faq-list details{border-bottom:1px solid #a385b14d}
.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;list-style:none;cursor:pointer;font-size:19px;line-height:1.4;padding:23px 0;color:#eee4f4}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{font-size:25px;color:#ceafd9;line-height:1;transition:transform .2s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list p{font-size:17px;line-height:1.7;max-width:650px;color:#cbb6d6;margin:0 35px 25px 0}
.faq-list summary:focus-visible{outline:2px solid #f2d037;outline-offset:5px}

/* A centred studio footer, with credentials inside it and the copyright last. */
.contact footer.studio-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:0;margin-top:90px;padding-top:48px;padding-bottom:16px;border-top:1px solid #ad8bb33d}
.studio-footer .footer-brand{display:flex;justify-content:center;width:100%}
.contact footer.studio-footer .logo{width:110px;height:auto;gap:12px;margin:0}
.contact footer.studio-footer .logo .studio-label{font-size:15px;color:#fff}
.studio-footer .footer-links{display:flex;justify-content:center;align-items:center;gap:30px;flex-wrap:wrap;width:100%;margin:33px 0 0}
.studio-footer .footer-links a{font-size:16px;line-height:1.5;color:#e0cce9;text-decoration:none}
.studio-footer .footer-links a:hover{color:#f2d037}
.contact .studio-footer address{margin:27px 0 0;font-size:16px;line-height:1.75;color:#c2adcF;font-style:normal}
.contact .studio-footer address>span{display:block;margin-bottom:6px;color:#a68cb5;font-size:14px;letter-spacing:.3px}
.studio-footer .certifications{justify-content:center;margin:30px 0 0;gap:14px}
.studio-footer .footer-bottom{width:100%;margin-top:37px;padding-top:25px;border-top:1px solid #a285af26;font-size:14px;line-height:1.5;color:#a991b7}
@media(max-width:700px){
 #creative-lab .evidence-board.notes-plane{grid-template-rows:repeat(2,max-content);align-items:start}
 #creative-lab .research-note{height:auto;min-height:0;align-self:start}
 #project-dialog{padding:24px 22px}#project-dialog h2{font-size:32px}#project-dialog #dialog-image{max-height:200px}
 .case-story{gap:21px}.case-story section{padding-left:32px}.case-story h3{font-size:19px}#project-dialog .case-story p{font-size:16px}.case-story .case-step{font-size:12px}
 .feedback-invitation{gap:14px;margin-top:32px}.client-feedback{padding:23px 18px}.feedback-fields{grid-template-columns:1fr}.feedback-form-heading h3{font-size:26px}.feedback-actions{gap:15px}
 .faq.section{grid-template-columns:1fr;gap:38px;padding-top:80px;padding-bottom:80px}.faq-heading h2{font-size:45px}.faq-list summary{font-size:18px;padding:21px 0}.faq-list p{font-size:16px;line-height:1.7;margin-right:15px}
 .contact footer.studio-footer{margin-top:65px;padding-bottom:80px}.studio-footer .footer-links{gap:16px 23px;margin-top:28px}.studio-footer .footer-links a{font-size:15px}.studio-footer .certifications{width:100%;max-width:380px}.studio-footer .footer-bottom{margin-top:28px}
}

/* The chat finishes with Done, matching the contact form. */
.founder-chat.is-sent>:not(.chat-close):not(.chat-confirmation){display:none!important}
.chat-confirmation[hidden]{display:none!important}
.chat-confirmation{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 0 10px;min-height:220px;outline:none}
.chat-confirmation>span{display:grid;place-items:center;width:43px;height:43px;border:1px solid #c4a2d566;border-radius:50%;color:#f2d037;font-size:23px;margin-bottom:18px}
.chat-confirmation h3{font-size:28px;line-height:1.15;letter-spacing:-.8px;margin:0 0 12px}
.chat-confirmation p{font-size:16px;line-height:1.5;color:#cdb9d8;margin:0 0 24px}
.chat-confirmation button{border:1px solid #e6d0ee55;border-radius:30px;min-height:44px;padding:11px 25px;font-size:16px;color:#f3e8f8;background:#3a2a45;cursor:pointer}
