/* Cherry Digital — the live site's warm editorial identity, with the quote catalogue. */
:root{--bg:#160e10;--panel:#211417;--panel-2:#1b1013;--bone:#f3ece3;--muted:#b9aaa4;--line:rgba(243,236,227,.15);--serif:'Fraunces',Georgia,serif;--red:#ec123c;--red-bright:#c91632}
html{background:var(--bg);color-scheme:dark;scroll-padding-top:100px}
body{background:var(--bg);color:var(--bone);font-family:var(--sans);line-height:1.6}
button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}main{min-height:65vh}
::selection{background:#bd1838;color:white}:focus-visible{outline:2px solid #ff6d89;outline-offset:4px}
.site-header{grid-template-columns:auto minmax(0,1fr) auto!important;min-height:76px!important;padding:12px max(24px,4vw)!important;gap:24px!important;background:rgba(22,14,16,.96)!important;backdrop-filter:blur(16px)}
.site-header .site-nav{gap:clamp(16px,1.7vw,27px)}.site-header .site-nav a{font:500 14px var(--sans);min-height:44px;display:flex;align-items:center}
.site-header .brand{color:var(--bone)!important;font-size:19px;font-weight:700}.site-header .brand small{letter-spacing:.13em;font-size:8px;color:var(--muted)}
.brand-logo{width:38px;height:38px;flex-basis:38px;margin-right:11px}
.header-actions{gap:12px!important}.header-actions button{min-width:44px;min-height:44px}.site-header .lang a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:44px;font:600 12px var(--sans)}
.cart-toggle,.menu-toggle{border-radius:50%!important;background:transparent!important}.cart-toggle svg,.menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7}
.mobile-nav{background:#1b1013!important;max-height:calc(100dvh - 76px);overflow:auto}.mobile-nav a{min-height:48px;font-size:17px}.mobile-nav a[aria-current=page]{color:#ff7e96}
.simple-home,.review-main,.catalog-page{padding-top:76px}
.simple-hero{position:relative;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:7vw;min-height:600px;padding:72px 6vw;background:radial-gradient(ellipse at 90% 50%,rgba(162,31,59,.10),transparent 55%),var(--bg);overflow:hidden}
.simple-hero::after{content:"";position:absolute;right:-125px;top:-50px;width:350px;height:470px;background:url('/assets/cherry-outline.svg') center/contain no-repeat;opacity:.1;pointer-events:none}
.simple-hero h1{font:500 clamp(44px,5.1vw,72px)/1.05 var(--serif);letter-spacing:-.045em;margin:18px 0 24px;max-width:16ch}.simple-hero h1 em{font-style:italic;color:var(--red);font-weight:500}
.hero-copy>p:not(.review-kicker){font-size:18px;color:#c8bdb6;max-width:52ch;line-height:1.65}
.hero-panel{position:relative;z-index:1;overflow:hidden;align-self:center;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,#1b1214,#27171c);box-shadow:0 24px 60px -35px #000;padding-bottom:8px}
.hero-panel::before{content:"● ● ●";display:block;padding:12px 20px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:5px;color:#675256}
.hero-panel>p{padding:24px 26px 12px;margin:0;color:#ed7b91;font:500 11px var(--mono);letter-spacing:.1em}
.hero-panel a{margin:0 16px;padding:22px 12px;grid-template-columns:28px 1fr;border-top:1px solid var(--line)}.hero-panel a:first-of-type{border-top:0}.hero-panel a:hover{background:rgba(236,18,60,.06)}.hero-panel b{font:500 24px var(--serif)}.hero-panel small{font-size:14px;color:var(--muted)}.hero-panel span{padding-top:6px;color:#ed7b91}
.review-main h1,.contact-hero h1,.faq-hero h1,.legal-hero h1,.checkout-head h1{font-family:var(--serif);font-weight:500;line-height:1.1;letter-spacing:-.035em;font-size:clamp(38px,4.6vw,64px);max-width:22ch}
.review-main h2{font-size:clamp(28px,3vw,42px);font-weight:500;letter-spacing:-.025em}.review-main h3{font-size:25px;font-weight:500}
.review-main p{color:#c8bdb6}.review-kicker,.eyebrow{font:500 11px/1.5 var(--mono)!important;letter-spacing:.12em;color:#ed7b91!important}
.review-section{padding:56px 6vw}.review-page-head{padding-top:58px}.review-lead{font-size:18px;max-width:65ch}.review-main a:not(.review-primary):not(.review-secondary){color:var(--bone)}
.review-primary,.review-secondary,.header-cta,.place-order,.drawer-primary,.drawer-secondary,.submit{border-radius:999px!important;min-height:48px;font:600 14px/1.5 var(--sans)!important;clip-path:none;transition:background .18s,border-color .18s,box-shadow .18s!important}
.review-primary,.drawer-primary,.submit{background:var(--red)!important;border-color:var(--red)!important;color:#fff!important}.review-primary:hover,.drawer-primary:hover,.submit:hover{background:#ca0e33!important;border-color:#ca0e33!important;box-shadow:0 6px 24px -12px #ec123c}
.review-secondary{border-color:#6b535a;background:transparent}.review-secondary:hover{background:#2b191f;border-color:#aa7b87}
.simple-start{padding-top:56px!important}.simple-paths{border-left:0;gap:28px;margin-top:30px}.simple-paths a{padding:26px 0;min-height:240px;border-right:0;background:none}.simple-paths a:hover{transform:none;background:none}.simple-paths h3{margin:24px 0 12px}.simple-paths span{font-size:14px}
.simple-offers{gap:50px}.simple-offer-grid article{grid-template-columns:1fr auto;gap:10px 20px}.simple-offer-grid h3{font-size:24px}.simple-offer-grid strong{font:500 14px var(--sans)}.simple-offer-grid button{grid-column:1/-1;grid-row:auto;justify-self:start;min-height:44px;padding:10px 18px;font:600 14px var(--sans)}.simple-offer-grid button.added{color:#ed7b91;border-color:#79404e}
.review-audit{background:var(--panel);border-radius:12px;margin-bottom:40px}.review-audit h2{margin-bottom:12px}.review-audit p{margin-bottom:0}
/* Catalogue: categories first, bounded service lists, and a persistent quote summary. */
.catalog-page .review-page-head{padding-bottom:24px}.catalog-page .review-actions{margin:18px 0}.catalog-search{max-width:none;margin:26px 0 12px}.catalog-search>span{font-size:14px}
.catalog-page .review-page-head{padding-top:36px}.catalog-page h1{font-size:clamp(34px,3.6vw,48px);max-width:none;margin:12px 0 16px}.catalog-page .review-lead{font-size:16px;max-width:85ch}.catalog-page .review-kicker{margin-bottom:10px}.catalog-page .catalog-help{margin-bottom:0}.review-project h2{font-size:31px;margin:12px 0}
.catalog-search input{font:16px var(--sans);padding:14px 18px;min-height:54px;border:1px solid #64444e;border-radius:10px;background:var(--panel-2)}
.catalog-search input:focus{outline:2px solid #f96b89;outline-offset:2px}.catalog-help{font-size:14px!important;max-width:85ch;color:var(--muted)!important}
.catalog-tools{display:flex;align-items:end;gap:16px;flex-wrap:wrap;padding:18px 0}.catalog-tools label{display:grid;gap:6px;font-size:13px;color:var(--muted);flex:1 1 230px}.catalog-tools select{width:100%;min-height:46px;padding:10px 35px 10px 13px;background:#211417;color:var(--bone);border:1px solid var(--line);border-radius:8px;font:15px var(--sans)}.catalog-tools select option{background:#211417}
.catalog-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.catalog-directory-card{position:relative;min-height:245px;padding:26px;display:grid;grid-template-columns:1fr auto;gap:10px 20px;border:1px solid var(--line);border-radius:12px;background:var(--panel-2);transition:border-color .2s,background .2s}.catalog-directory-card:hover{border-color:#925061;background:#26151b}
.catalog-directory-card .review-kicker{margin:0;grid-column:1/-1}.catalog-directory-card h2{font-size:28px;margin:0;grid-column:1/-1}.catalog-directory-card p:not(.review-kicker){grid-column:1/-1;font-size:15px}.catalog-directory-card strong{font:600 17px var(--sans);margin:8px 0}.catalog-directory-card .review-secondary{margin:0;align-self:end;min-height:44px;padding:9px 16px;font-size:13px!important}
.catalog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.catalog-card{min-height:0;padding:28px;border-radius:12px;background:var(--panel);border:1px solid var(--line)}.catalog-card h2{font:500 29px/1.2 var(--serif);margin:0 0 15px}.catalog-card-category{font:500 11px/1.5 var(--sans)!important;letter-spacing:.06em;color:#e995a7}
.catalog-card>p:not(.catalog-card-category){font-size:16px}.catalog-card strong{font:600 24px/1.4 var(--sans);margin:22px 0 14px}.catalog-card strong small{font:400 14px var(--sans);color:var(--muted)}
.catalog-card details{font-size:15px}.catalog-card summary{color:var(--bone);padding:12px 0;min-height:44px}.catalog-card details li{margin-bottom:8px}.catalog-card .review-primary{width:100%}.catalog-card .review-primary:disabled{opacity:1;background:#38232b!important;border-color:#75404e!important;color:#f0b8c5!important;cursor:default}
.catalog-note{font-size:15px;margin-bottom:24px;padding:16px 20px;border-left:2px solid #bb516b;background:#201317}.catalog-results{padding-top:8px}#catalog-breadcrumb{font-size:14px;flex-wrap:wrap;margin-bottom:8px}#catalog-breadcrumb a{min-height:44px;display:inline-flex;align-items:center}
.quote-summary{position:sticky;bottom:16px;z-index:25;display:flex;justify-content:space-between;align-items:center;gap:20px;width:calc(100% - 12vw);max-width:1160px;margin:0 auto 30px;padding:16px 22px;border:1px solid #7e3d50;border-radius:14px;background:#28171eee;box-shadow:0 10px 35px #0005;backdrop-filter:blur(14px)}
.quote-summary p{margin:0;font:600 15px var(--sans)}.quote-summary small{display:block;margin-top:4px;font:400 13px var(--sans);color:#bfaab1}.quote-summary-actions{display:flex;gap:10px;align-items:center}.quote-summary button{cursor:pointer;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--bone);font:500 14px var(--sans)}
/* Selected projects use real website captures, not generated mock-ups. */
.review-project-grid{gap:24px;margin-top:36px}.review-project{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;overflow:hidden}.review-project>img{height:300px;object-fit:cover;object-position:top;background:#201317}.review-project>img[src*="animaminds"]{object-fit:contain}.review-project>div{padding:28px}.review-project h3{font-size:31px;margin:12px 0}.review-project p{font-size:16px}.review-project a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline!important;text-underline-offset:5px}.review-project span{font:500 12px var(--sans);color:#d28b9c}.portfolio-feature{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr;align-items:center}.portfolio-feature>img{height:auto;aspect-ratio:16/10}
.studio-process{border-left:0;gap:24px;border-top:0}.studio-process article{padding:24px 0;background:none;border-right:0;border-top:2px solid #b9294b}.studio-process h2{font-size:28px}.studio-process p,.studio-offer-grid p{font-size:16px}.studio-offer-grid article{border-radius:10px;background:var(--panel)}.studio-offer-grid h3{font-size:25px}.studio-offer-grid a{min-height:44px;display:inline-flex;align-items:center;font-size:15px}.review-main .studio-solution{grid-template-columns:60px minmax(0,1fr)}
/* Forms retain integrated accessible labels and comfortable field padding. */
.contact-hero{padding-top:62px!important;padding-bottom:32px!important}.contact-stage{grid-template-columns:minmax(240px,.66fr) minmax(500px,1.34fr)!important;gap:clamp(36px,6vw,90px)!important}
#quote-form{scroll-margin-top:100px}.catalog-tools select:disabled{opacity:.55;cursor:not-allowed}
.contact-form-shell,.summary{background:var(--panel)!important;border-radius:14px}.contact-form-shell{padding:clamp(30px,4vw,52px)!important;border:1px solid #5b343f!important}.contact-form-shell::before{display:none!important}.contact-form-shell h2{font:500 clamp(30px,3vw,42px)/1.1 var(--serif)!important;letter-spacing:-.025em}.form-kicker{font:500 11px var(--mono);letter-spacing:.1em;color:#ed7b91}.form-intro{font-size:16px!important;line-height:1.65}
.cart-context{margin:26px 0!important;padding:18px 20px!important;background:#2c1920!important;border:1px solid #613644!important;border-radius:8px}.cart-context b{font-size:14px!important}.cart-context p{white-space:pre-line;font-size:14px!important;line-height:1.8!important;color:#decbd0!important}
.contact-stage form{gap:18px!important}.field{position:relative;gap:0!important}.field.floating input,.field.floating textarea{font:16px var(--sans)!important;min-height:66px;padding:29px 17px 11px!important;border:1px solid #61434c!important;border-radius:8px!important;background:#190f13!important;color:var(--bone)!important}
.field.floating textarea{min-height:150px;padding-top:38px!important}.field.floating label{position:absolute;left:17px;top:10px;z-index:1;color:#c8aeb7!important;font:500 12px/1.3 var(--sans)!important;pointer-events:none;user-select:none}.field.floating label small{font:inherit;color:#b19a9f}.field.floating input:focus,.field.floating textarea:focus{border-color:#f36e8e!important;box-shadow:0 0 0 3px #ec123c18}.field textarea::placeholder,.field input::placeholder{font:400 15px var(--sans)!important;color:#a48c94;opacity:1}
.choice-field{margin:8px 0;padding:0;border:0}.choice-field legend{margin-bottom:12px;font-size:14px;font-weight:600;color:#e7d5dc}.interest-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.interest-options label{position:relative;display:flex;align-items:center;min-height:52px;padding:13px 15px;border:1px solid #61434c;border-radius:8px;background:#190f13;color:#cfb9c1!important;font:400 14px/1.45 var(--sans)!important;cursor:pointer}.interest-options input{position:absolute;opacity:0;pointer-events:none}.interest-options label:has(input:checked){border-color:#f36e8e;background:#3b1b28;color:#fff!important}.interest-options label:has(input:focus-visible){outline:2px solid #f36e8e;outline-offset:2px}
.consent{margin-top:8px!important;font-size:14px!important;line-height:1.6}.consent input{margin-top:4px!important}.form-actions{margin-top:6px!important;padding-top:20px;border-top:1px solid var(--line)}.submit{padding-inline:24px!important;min-width:190px}.privacy{font-size:13px!important;line-height:1.5!important}.field-error{font-size:14px;margin-top:7px}.checkout-grid{gap:32px}.checkout .fields{gap:20px}.field input,.field select,.field textarea{font-size:16px!important}.terms{font-size:14px!important}.secure{font-size:13px!important}
.cart-drawer{width:min(500px,100vw);background:#211417!important}.cart-head{padding:28px}.cart-head>div:first-child>span{display:block;margin-bottom:7px;color:#d891a2;font:500 11px var(--sans);letter-spacing:.08em;text-transform:uppercase}.cart-head h2{font:500 29px/1.2 var(--serif)}.cart-line b{font:600 16px/1.4 var(--sans)}.cart-line span{font:400 14px/1.5 var(--sans);color:#bba3ad}.cart-foot{background:#1b1013}.cart-total strong{font:600 16px var(--sans)}.cart-note,.cart-empty span{font-size:14px;line-height:1.6}
.ui-reveal,.ui-stagger>*{opacity:1!important;transform:none!important;filter:none!important}.cherry-motif,.cherry-decorated::before,.cherry-decorated::after{display:none!important}.cookie-note{background:#29181f!important;border-radius:12px;max-width:440px}.cookie-note p{font-size:14px!important}.cookie-note button{min-height:44px}.site-footer-standard{background:#160e10}.site-footer-actions>a{font-size:14px;min-height:44px}.site-footer-facts{font-size:12px}.launch-footer-nav{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:20px}.launch-footer-nav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}
@media(max-width:1180px){.site-header{grid-template-columns:1fr auto!important}.site-header .site-nav{display:none!important}.menu-toggle{display:inline-flex!important;align-items:center;justify-content:center}.studio-process{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1181px){.mobile-nav{display:none!important}}
@media(max-width:900px){.contact-stage{grid-template-columns:1fr!important}.simple-hero{gap:35px}.simple-hero h1{font-size:49px}}
@media(max-width:760px){
 html{scroll-padding-top:84px}.site-header{min-height:68px!important;padding:10px 16px!important;gap:8px!important}.site-header .brand{font-size:16px}.site-header .brand small{display:none}.brand-logo{width:28px;height:28px;flex-basis:28px;margin-right:8px}.header-actions{gap:3px!important}.site-header .lang a{min-width:29px}.mobile-nav{top:68px!important;max-height:calc(100dvh - 68px)}
 .simple-home,.review-main,.catalog-page{padding-top:68px}.simple-hero{grid-template-columns:1fr;min-height:0;padding:40px 6vw;gap:26px}.simple-hero h1{font-size:clamp(40px,11vw,54px);max-width:16ch}.hero-copy>p:not(.review-kicker){font-size:17px}.simple-hero .review-actions{gap:10px;margin-bottom:0}.review-actions>a{flex:1 1 150px}.hero-panel a{padding:16px 10px}.hero-panel b{font-size:23px}.hero-panel>p{padding-top:18px}
 .review-section{padding:36px 6vw}.review-page-head{padding-top:38px}.review-main h1{font-size:39px}.simple-hero h1{font-size:clamp(40px,11vw,54px)}.simple-paths{grid-template-columns:1fr;gap:0}.simple-paths a{min-height:0;padding:22px 0}.simple-paths h3{margin:14px 0 8px}.simple-paths span{padding-top:12px}
 .catalog-directory,.catalog-card-grid{grid-template-columns:1fr}.catalog-directory-card{padding:23px;min-height:0;gap:12px}.catalog-directory-card h2{font-size:27px}.catalog-directory-card strong{font-size:16px}.catalog-directory-card .review-secondary{padding:8px 12px}.catalog-card{padding:24px}.catalog-card h2{font-size:28px}.catalog-tools{gap:12px}.catalog-tools label{flex-basis:100%}
 .quote-summary{bottom:10px;width:calc(100% - 24px);gap:10px;padding:14px;flex-wrap:wrap}.quote-summary small{display:none}.quote-summary-actions{gap:8px}.quote-summary-actions a,.quote-summary-actions button{font-size:13px!important;padding:10px 13px;min-height:44px}.quote-summary p{font-size:14px}
 .studio-process{grid-template-columns:1fr}.review-main .studio-solution{grid-template-columns:1fr;gap:8px}.portfolio-feature{grid-column:auto;display:block}.review-project>img{height:auto;aspect-ratio:16/10}.review-project>div{padding:24px}
 .contact-hero{padding-top:42px!important}.contact-stage{gap:26px!important}.contact-form-shell{padding:30px 22px!important}.interest-options{grid-template-columns:1fr}.form-actions{align-items:stretch!important}.submit{width:100%}.privacy{max-width:none}.checkout .fields{grid-template-columns:1fr}.checkout .field.full{grid-column:auto}.cart-head{padding:22px 18px}.cart-body,.cart-foot{padding-left:18px!important;padding-right:18px!important}
 .simple-offer-grid article{grid-template-columns:1fr}.simple-offer-grid button{justify-self:start}.review-audit{gap:24px;border-radius:0}.review-audit>a{width:100%}.cookie-note{left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;max-width:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
