/* Shared full-width backgrounds and wide-screen layout for Lovi and its cases. */
:root {
  --surface-peach:#f7eadb;
  --surface-sand:#f0e9dc;
  --surface-apricot:#f9d2b3;
  --surface-paper:#fff8ee;
  --surface-tangerine:#ffc394;
  --surface-ink:#2b2724;
  --layout-gutter:clamp(40px,4.5vw,96px);
  --layout-width:min(calc(100% - 2 * var(--layout-gutter)),1760px);
}
.home-page {--paper:#fff8ee;--cream:#f0e9dc;--line:#d5d5c6;background:var(--surface-peach)}
.study-page {--paper:#f5eee2;--line:#d6d4c7;background:var(--surface-peach)}
.header-surface {background:var(--surface-peach);position:relative;z-index:30}
.hero-surface,.case-opening {position:relative;isolation:isolate;overflow:clip;background:radial-gradient(ellipse at 96% 48%,#efcaae66 0,transparent 55%),linear-gradient(120deg,#f7eadb,#f8eedf 48%,#f3ddc6)}
.hero-surface:before,.case-opening:before {content:'';position:absolute;z-index:-1;pointer-events:none;left:57%;top:-26%;width:76%;height:143%;border:1px solid #bb8c622c;border-radius:48%;transform:rotate(-23deg)}
.hero-surface:after,.case-opening:after {content:'';position:absolute;z-index:-1;pointer-events:none;left:62%;top:-16%;width:78%;height:138%;border:1px solid #bb8c6222;border-radius:48%;transform:rotate(-23deg)}
.home-page .hero-bottom {border-color:#d7c8b5}
.home-page .art-orbit {border-color:#d4b58d}
.home-page .hero-flower {filter:drop-shadow(0 6px 12px #ed601210)}
.home-page .goose-speech {background:#fff9ef;border-color:#e0d3bf;box-shadow:0 12px 32px #68422a08}
.home-page .goose-greeting {background:#fff7e9;border:1px solid #e8d8c1}
.home-page .hero-eyebrow,.home-page .hero-description {color:#656153}
.home-page .hero-word {color:#df541c}
.home-page .hero-work-link:after {background:#736756}
.home-page .header-cta {border-color:#cbbca7;background:#fffaf154}
.home-page .header-cta:hover {background:var(--ink)}
.home-page .marquee {background:#ff641f;border-block:1px solid #f45b17}

/* A calm gallery on sand, followed by the peach services gallery. */
.work-surface {background:var(--surface-sand)}
.home-page .work-section {position:relative}
.home-page .work-heading h2 span {color:#757363}
.home-page .work-heading>p,.home-page .featured-info p {color:#6c6b5e}
.home-page .featured-tags li {border-color:#cac9b9;color:#5d6052;background:#f8f4e957}
.home-page .featured-cover {box-shadow:0 25px 55px #44402c12}
/* Warm apricot carries the process section; the calculator stays charcoal. */
.approach-surface {background:var(--surface-apricot);position:relative;isolation:isolate;overflow:clip}
.approach-surface:before {content:'';position:absolute;z-index:-1;pointer-events:none;left:-240px;top:-200px;width:560px;height:560px;border:1px solid #b969342b;border-radius:50%}
.approach-surface:after {content:'';position:absolute;z-index:-1;pointer-events:none;right:-170px;bottom:-300px;width:600px;height:600px;border:1px solid #b9693427;border-radius:50%}
.home-page .approach-section {--line:#e0b594;--muted:#7a5237}
.home-page .approach-intro>p:last-child {color:#7a5237}
.home-page .approach-intro .orange {color:#c94e18}
.home-page .steps {gap:clamp(24px,3vw,52px)}
.home-page .step {border-color:#ddb08d}
.home-page .step>span {color:#87512e}
.home-page .step>p {color:#7a5237}
.home-page .graphic-plan i:first-child {background:#fff0df}
.home-page .calculator-section {background:radial-gradient(ellipse at 1% 102%,#c57b4026,transparent 60%),var(--surface-ink)}
.home-page .calculator-section:before {content:'';position:absolute;pointer-events:none;width:650px;height:650px;left:-300px;bottom:-350px;border:1px solid #ffdab818;border-radius:50%}
.home-page .calculator-card {background:#faf4e8;box-shadow:0 20px 60px #00000012;border:1px solid #ead5bf}
.home-page .calc-types label {background:#fffaf2;border-color:#d8c7b0}
.home-page .calc-types label:has(input:checked) {background:#f8e1c9;border-color:#dc702e}
.faq-surface {background:linear-gradient(115deg,#f3e5d4,#f8eedf 65%)}
.home-page .faq-section {--line:#d9cbb6;--muted:#6e6659}
.home-page .faq-heading .serif {color:#996843}
.home-page .contact-section {background:radial-gradient(ellipse at 80% 65%,#ffad6659,transparent 54%),linear-gradient(115deg,#f36020,#ff7830)}
.home-page .contact-circle {background:#ffd19a;opacity:.48}
.home-page .contact-copy h2,.study-page .next-project h2 {color:#262d23}
.home-page .contact-copy h2 span,.study-page .next-project h2 span {color:#6d321a}
.home-page .contact-copy>p,.home-page .contact-goose>span {color:#332519}
.home-page .mobile-menu,.home-page .brief-dialog {background:#fff8ec;border:1px solid #e0d3bf}
.home-page .brief-dialog input,.home-page .brief-dialog textarea,.home-page .brief-dialog select {background:#f6efdf;border-color:#d6ccb7}
.home-page .brief-dialog::backdrop {background:#30251faa;backdrop-filter:blur(7px)}

/* Case backgrounds continue the same palette, with violet reserved for Avito. */
.study-page .page-header {border-color:#dacbb7}
.study-page .header-contact {background:#fffaf154;border-color:#cbbca7}
.study-page .header-contact:hover {background:var(--ink)}
.study-page .intro-topline,.study-page .intro-statement span,.study-page .intro-bottom>p {color:#726958}
.study-page .cinema-wrap {padding-bottom:20px}
.study-page .cinema {box-shadow:0 28px 55px #55382020}
.study-page .cinema-controls button {color:#6c6252}
.study-page .chapter-nav {margin-top:0;background:#f0eadff5;border-color:#d8d0be}
.study-page .chapter-nav a {color:#746e5e}
.study-page .chapter-nav a[aria-current],.study-page .chapter-nav a:hover {color:#252c22}
.case-context-surface {background:var(--surface-apricot)}
.study-page .context-title span {color:#986540}
.study-page .context-copy {color:#75513b}
.study-page .website-chapter {background:#f6f0e4;border-top:0}
.study-page .work-steps article {border-color:#d3cfbe}
.study-page .service-showcase {background:#292521;box-shadow:0 18px 35px #46463409}
.study-page .avito-chapter {background:#eae5ee}
.study-page .avito-board {background:#fbf7f1;border:1px solid #ded7e4;box-shadow:0 16px 40px #5a406407}
.study-page .editorial-list li {border-color:#cfc5d5}
.study-page .editorial-list p {color:#6a6273}
.study-page .maps-chapter {background:#f9d2b3}
.study-page .maps-chapter .chapter-lead {color:#775437}
.study-page .map-showcase {background:#efbd94;border-color:#dba57a;box-shadow:0 22px 44px #9b51260c}
.study-page .map-tabs {background:#efbd94;border-color:#dba57a}
.study-page .map-tabs button[aria-selected=true] {background:#fff5e5;box-shadow:0 3px 12px #6c351608}
.study-page .map-panel figcaption {background:#fff2e0}
.study-page .address-pin {background:#eeb383;color:#85491f}
.study-page .address-strip>span:last-child {color:#775437}
.study-page .outdoor-chapter {background:#e9e1d2}
.study-page .banner-image {background:#d9cfbc}
.study-page .large-detail-number {color:#b5a88e}
.study-page .sign-story>p,.study-page .banner-heading>p {color:#6f6554}
.study-page .detail-list li {border-color:#cfc3ad}
.study-page .identity-chapter {background:#f6eee1}
.study-page .logo-canvas {background:#10100f}
.study-page .result-chapter {background:linear-gradient(120deg,#f5c6a2,#ffdcc0);color:#38291f}
.study-page .result-chapter .chapter-number,.study-page .result-grid article>span {color:#a45024}
.study-page .result-chapter h2 span {color:#a0562d}
.study-page .result-intro,.study-page .result-grid p {color:#724d34}
.study-page .result-grid article,.study-page .project-links a {border-color:#d4a27b}
.study-page .project-links a:hover {color:#a23f19}
.study-page .next-project {background:radial-gradient(ellipse at 88% 25%,#ffb47740,transparent 55%),linear-gradient(110deg,#f36829,#ff7a35)}
.study-page .media-viewer {background:#2d2521;border-color:#7b6250}
.study-page .media-viewer::backdrop {background:#211812ed}
.footer-surface {background:#2b2724;color:#f3f2e5}
.home-page .footer,.study-page .page-footer {border-top:1px solid #ffffff0d}
.home-page .footer>p,.home-page .footer-links button,.home-page .copyright,.study-page .page-footer p,.study-page .page-footer>a:last-child {color:#d0bcaa}
.home-page .to-top {border-color:#806c5a;color:#f5dec7}
.home-page .footer-links button:hover,.study-page .page-footer>a:last-child:hover {color:#ffb47d}

/* Expand layout, type and artwork together; reading columns stay bounded. */
@media(min-width:1200px) {
  .home-page .wrap,.home-page .site-header,.study-page .container {width:var(--layout-width);max-width:none;padding-inline:0;margin-inline:auto}
  .home-page .site-header {height:104px;gap:36px}
  .home-page .desktop-nav {font-size:16px;gap:clamp(25px,2.1vw,40px)}
  .home-page .header-cta {font-size:16px;min-height:54px;padding-inline:22px}
  .home-page .hero {min-height:clamp(650px,calc(100svh - 170px),850px);padding-top:26px;column-gap:clamp(24px,2.2vw,52px);grid-template-columns:minmax(0,1.08fr) minmax(0,1fr)}
  .home-page .hero h1 {font-size:clamp(108px,8.1vw,174px);line-height:1.005;margin-block:28px 36px}
  .home-page .hero-description {font-size:clamp(21px,1.45vw,27px);line-height:1.55;max-width:650px}
  .home-page .hero-eyebrow {font-size:16px}
  .home-page .hero-art {width:100%;height:auto;max-width:min(720px,calc((100svh - 220px)/1.06));aspect-ratio:1/1.06;justify-self:end;margin:0}
  .home-page .goose-stage {width:114%;left:-7%;top:-3%}
  .home-page .goose-speech {font-size:clamp(15px,1.05vw,18px);padding:17px 21px;top:9%;left:-1%}
  .home-page .goose-greeting {font-size:16px;right:0;bottom:3%}
  .home-page .hero-flower {width:clamp(64px,4.5vw,86px);height:clamp(64px,4.5vw,86px)}
  .home-page .hero-actions {margin-top:35px;gap:34px}
  .home-page .hero-actions .btn {font-size:18px;min-height:70px;padding-left:27px;gap:30px}
  .home-page .hero-actions .btn-icon {width:48px;height:48px}
  .home-page .hero-work-link {font-size:17px}
  .home-page .hero-bottom {min-height:88px;margin-top:20px}
  .home-page .hero-specialties {font-size:17px;gap:29px}
  .home-page .hero-bottom .hero-scroll {font-size:15px}
  .home-page .section {padding-block:clamp(105px,7vw,140px)}
  .home-page .work-heading h2 {font-size:clamp(64px,4.8vw,82px)}
  .home-page .work-heading>p {font-size:20px;max-width:480px}
  .home-page .featured-cover {height:clamp(540px,35vw,720px)}
  .home-page .featured-car {width:auto;height:118%;max-width:none;aspect-ratio:3/2;right:-3%;bottom:-11%;object-fit:contain}
  .home-page .featured-logo {width:clamp(245px,17vw,310px);left:48px;top:37px;height:auto}
  .home-page .featured-location {font-size:16px;right:45px;top:47px}
  .home-page .featured-story {font-size:clamp(62px,4.4vw,82px);max-width:650px;left:48px;bottom:85px}
  .home-page .featured-open {font-size:17px;padding:17px 24px;right:40px;bottom:34px}
  .home-page .featured-info h3 {font-size:35px}
  .home-page .featured-info p {font-size:19px}
  .home-page .featured-tags {max-width:560px;gap:10px}
  .home-page .featured-tags li {font-size:15px;padding:9px 16px}
  .home-page .services-section h2,.home-page .approach-intro h2,.home-page .faq-heading h2 {font-size:clamp(58px,4.4vw,76px)}
  .home-page .section-aside {font-size:18px;max-width:460px}
  .home-page .service summary {padding-block:32px;grid-template-columns:65px 1.3fr 1fr 44px}
  .home-page .service-number {font-size:16px}
  .home-page .service h3 {font-size:32px}
  .home-page .service-hint {font-size:16px}
  .home-page .service-content {margin-left:81px;gap:26px 70px;padding-bottom:34px}
  .home-page .service-content p {font-size:18px;max-width:620px}
  .home-page .service-chips span {font-size:15px;padding:8px 15px}
  .home-page .service-content .text-link,.home-page .service-bottom p {font-size:16px}
  .home-page .service-bottom .btn {font-size:16px;min-height:65px}
  .home-page .approach-intro>p:last-child {font-size:20px;line-height:1.7}
  .home-page .steps {margin-top:75px}
  .home-page .step>span {font-size:16px}
  .home-page .step h3 {font-size:25px;margin-bottom:17px}
  .home-page .step>p {font-size:18px;max-width:34ch;line-height:1.7}
  .home-page .calculator-grid {gap:clamp(80px,7vw,150px);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}
  .home-page .calculator-intro h2 {font-size:clamp(64px,5vw,86px)}
  .home-page .calculator-intro>p:not(.eyebrow) {font-size:20px;line-height:1.7}
  .home-page .calc-note {font-size:15px}
  .home-page .calculator-card {padding:clamp(32px,3vw,50px)}
  .home-page legend {font-size:19px}
  .home-page legend>span {font-size:15px}
  .home-page .calc-types {gap:12px}
  .home-page .calc-types label {padding:16px 30px 16px 16px;min-height:86px}
  .home-page .calc-types label>span {font-size:16px}
  .home-page .calc-types small {font-size:13px}
  .home-page .calc-extras label {font-size:16px;margin-top:17px}
  .home-page .calc-extras small {font-size:14px}
  .home-page .result-label {font-size:13px}
  .home-page .calc-result output {font-size:48px}
  .home-page .calc-period {font-size:14px}
  .home-page .calc-cta {font-size:17px;min-height:64px}
  .home-page .calc-disclaimer {font-size:14px!important}
  .home-page .faq-section {gap:100px}
  .home-page .faq-list summary {font-size:21px;padding-block:29px}
  .home-page .faq-list details p {font-size:18px;max-width:66ch}
  .home-page .contact-inner {min-height:600px}
  .home-page .contact-copy {padding-block:100px}
  .home-page .contact-copy h2 {font-size:clamp(74px,5.7vw,100px)}
  .home-page .contact-copy>p:not(.eyebrow) {font-size:20px}
  .home-page .contact-copy .btn {font-size:17px;min-height:65px}
  .home-page .contact-goose {width:clamp(580px,43vw,740px);height:clamp(580px,43vw,740px);top:20px;right:20px}
  .home-page .contact-circle {width:73%;height:73%;left:19%;top:14%}
  .home-page .contact-goose>span {font-size:32px}
  .home-page .footer>p,.home-page .footer-links button,.home-page .copyright {font-size:15px}

  .study-page .project-intro {padding-block:62px 42px}
  .study-page .intro-grid {gap:70px}
  .study-page .intro-grid h1 {font-size:clamp(104px,7.2vw,144px)}
  .study-page .intro-statement {font-size:clamp(26px,1.85vw,34px);max-width:570px}
  .study-page .intro-topline,.study-page .intro-bottom {font-size:19px}
  .study-page .cinema-link {height:clamp(720px,44vw,880px)}
  .study-page .bmw-frame {width:clamp(720px,56%,1000px);max-width:none;bottom:0}
  .study-page .cinema-title {top:110px;font-size:clamp(90px,6vw,132px)}
  .study-page .cinema-logo {width:200px;height:auto}
  .study-page .cinema-top {left:45px;right:45px;top:29px}
  .study-page .cinema-bottom {left:45px;right:45px;bottom:38px}
  .study-page .cinema-domain {font-size:18px}
  .study-page .visit-button {font-size:19px;padding-left:25px}
  .study-page .visit-arrow {width:48px;height:48px}
  .study-page .chapter-nav .container {justify-content:space-between;gap:35px}
  .study-page .chapter-nav a {font-size:18px}
  .study-page .project-context {gap:clamp(80px,7vw,140px);padding-block:115px}
  .study-page .context-title {font-size:clamp(40px,3.2vw,54px)}
  .study-page .context-copy {font-size:21px;max-width:660px;justify-self:end}
  .study-page .chapter {padding-block:clamp(105px,7vw,135px)}
  .study-page .chapter-heading {gap:clamp(78px,7vw,140px);margin-bottom:60px}
  .study-page .chapter h2 {font-size:clamp(60px,4.4vw,78px)}
  .study-page .chapter-lead {font-size:22px;max-width:600px}
  .study-page .work-steps {gap:clamp(40px,4vw,76px)}
  .study-page .work-steps p {font-size:20px;max-width:37ch}
  .study-page .work-steps h3 {font-size:30px}
  .study-page .service-showcase {padding:clamp(44px,3.4vw,64px)}
  .study-page .showcase-heading h3 {font-size:42px}
  .study-page .service-grid {gap:26px}
  .study-page .service-grid figcaption {font-size:22px}
  .study-page .avito-layout {gap:clamp(80px,7vw,140px);grid-template-columns:1fr 1.08fr}
  .study-page .avito-board {max-width:720px;padding:clamp(38px,3vw,54px)}
  .study-page .avito-board>p {font-size:clamp(50px,3.7vw,64px)}
  .study-page .avito-client img {max-width:430px;margin-inline:auto}
  .study-page .editorial-list h3 {font-size:32px}
  .study-page .editorial-list p {font-size:21px;max-width:56ch}
  .study-page .map-showcase {max-width:1380px;margin-inline:auto}
  .study-page .address-strip {max-width:1380px;margin-inline:auto}
  .study-page .sign-layout {grid-template-columns:1fr 1fr;gap:clamp(90px,8vw,160px)}
  .study-page .sign-layout>figure {max-width:740px}
  .study-page .sign-story h3 {font-size:clamp(45px,3.3vw,58px)}
  .study-page .sign-story>p {font-size:21px;max-width:48ch}
  .study-page .detail-list {max-width:620px}
  .study-page .detail-list li {font-size:19px}
  .study-page .banner-heading {gap:clamp(90px,8vw,160px)}
  .study-page .banner-heading>p {font-size:21px;max-width:600px}
  .study-page .banner-heading h3 {font-size:58px}
  .study-page .banner-image {padding:clamp(50px,4vw,76px)}
  .study-page .identity-grid {gap:clamp(65px,7vw,140px);grid-template-columns:1.2fr .8fr}
  .study-page .door-figure {max-width:560px;justify-self:end}
  .study-page .identity-thought {font-size:36px}
  .study-page .result-chapter {padding-block:120px 100px}
  .study-page .result-chapter h2 {font-size:clamp(62px,4.4vw,78px)}
  .study-page .result-intro {font-size:25px;max-width:1000px}
  .study-page .result-grid h3 {font-size:31px}
  .study-page .result-grid p {font-size:20px}
  .study-page .next-project {padding-block:105px}
  .study-page .next-project h2 {font-size:clamp(72px,5.3vw,94px)}
  .study-page .next-project-link {font-size:21px}
}
@media(min-width:1200px) and (max-height:820px) {
  .home-page .site-header {height:88px}
  .home-page .hero {min-height:0;padding-top:20px}
  .home-page .hero h1 {font-size:clamp(108px,7.4vw,142px);margin-block:22px 28px}
  .home-page .hero-description {font-size:22px}
  .home-page .hero-actions {margin-top:26px}
  .home-page .hero-bottom {min-height:78px;margin-top:12px}
}
@media(max-width:1199px) {
  .home-page .services-section .section-aside,.home-page .service-content p {font-size:16px}
  .home-page .service-hint {font-size:13px}
  .home-page .service-chips span {font-size:12px}
  .home-page .service-content .text-link,.home-page .service-bottom p {font-size:14px}
  .home-page .approach-intro>p:last-child {font-size:17px}
  .home-page .step>p {font-size:15px}
  .home-page .step h3 {font-size:20px}
  .home-page .faq-list summary {font-size:17px}
  .home-page .faq-list details p {font-size:16px}
}
@media(max-width:680px) {
  .hero-surface,.case-opening {background:radial-gradient(ellipse at 100% 72%,#f0d4b7aa,transparent 65%),#f7eadb}
  .hero-surface:before,.case-opening:before {left:40%;top:20%;width:130%;height:85%;border-color:#bb8c621f}
  .hero-surface:after,.case-opening:after,.approach-surface:before,.approach-surface:after {display:none}
  .home-page .services-section .section-aside {font-size:16px}
  .home-page .service h3 {font-size:20px}
  .home-page .service-content p {font-size:16px}
  .home-page .service-content .text-link {font-size:14px}
  .home-page .service-bottom p {font-size:14px}
  .home-page .approach-intro>p:last-child {font-size:16px}
  .home-page .step>span {font-size:13px}
  .home-page .step h3 {font-size:18px}
  .home-page .step>p {font-size:15px;line-height:1.65}
  .home-page .steps {gap:30px 22px}
  .home-page .faq-list summary {font-size:17px}
  .home-page .faq-list details p {font-size:16px}
  .study-page .cinema-wrap {padding-bottom:12px}
  .study-page .chapter-nav {background:#f0eadff7}
}
@media(max-width:370px) {.home-page .steps{grid-template-columns:1fr}.home-page .step>p{max-width:34ch}}
