/* Pollioni shared stylesheet — generated from approved page builds. */
html{scroll-behavior:smooth}

/* ===== HOME ===== */


    body.page-home{
      --canvas: #F4F1EB;
      --canvas-secondary: #ECE7DE;
      --ink: #1B1B1B;
      --ink-muted: #67625A;
      --night: #0E1822;
      --metal: #8C7855;
      --line: rgba(27, 27, 27, 0.14);
      --line-dark: rgba(244, 241, 235, 0.16);
      --page-gutter: clamp(1.5rem, 4.5vw, 5rem);
      --section-space: clamp(7rem, 12vw, 12rem);
      --content-width: 90rem;
      --copy-width: 44rem;
      --sans: "Neue Haas Grotesk Text Pro", "Neue Haas Grotesk", "Helvetica Neue", Helvetica, Arial, sans-serif;
      --editorial: "GT Sectra Display", Canela, "Iowan Old Style", Georgia, serif;
      --ease: cubic-bezier(.16, 1, .3, 1);
    }

    body.page-home *, body.page-home *::before, body.page-home *::after{ box-sizing: border-box; }
    html{ scroll-behavior: smooth; background: var(--night); }
    body.page-home{
      margin: 0;
      background: var(--canvas);
      color: var(--ink);
      font-family: var(--sans);
      font-size: clamp(1.0625rem, 1vw, 1.25rem);
      font-weight: 400;
      line-height: 1.62;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
    }
    body.page-home.menu-open{ overflow: hidden; }
    body.page-home img, body.page-home svg, body.page-home video{ display: block; max-width: 100%; }
    body.page-home a{ color: inherit; text-decoration: none; }
    body.page-home button{ color: inherit; font: inherit; }
    body.page-home :focus-visible{ outline: 1px solid var(--metal); outline-offset: 5px; }
    body.page-home .skip-link{ position: fixed; top: .75rem; left: .75rem; z-index: 1000; transform: translateY(-200%); background: var(--canvas); color: var(--ink); padding: .75rem 1rem; }
    body.page-home .skip-link:focus{ transform: none; }
    body.page-home .shell{ width: min(calc(100% - (2 * var(--page-gutter))), var(--content-width)); margin-inline: auto; }
    body.page-home .section{ padding-block: var(--section-space); }
    body.page-home .section--secondary{ background: var(--canvas-secondary); }
    body.page-home .section--night{ background: var(--night); color: var(--canvas); }
    body.page-home .eyebrow{ margin: 0 0 1.5rem; color: var(--ink-muted); font-size: .7rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; }
    body.page-home .section--night .eyebrow{ color: rgba(244,241,235,.58); }
    body.page-home h1, body.page-home h2, body.page-home h3, body.page-home p{ margin-top: 0; }
    body.page-home h1, body.page-home h2, body.page-home h3{ font-weight: 300; letter-spacing: -.035em; }
    body.page-home h1{ font-size: clamp(4.5rem, 8.4vw, 8rem); line-height: .92; }
    body.page-home h2{ font-size: clamp(3rem, 5vw, 4.75rem); line-height: 1; }
    body.page-home h3{ font-size: clamp(2rem, 3vw, 3.5rem); line-height: 1.04; }
    body.page-home .editorial{ font-family: var(--editorial); font-style: italic; font-weight: 400; }
    body.page-home .muted{ color: var(--ink-muted); }
    body.page-home .text-link{ display: inline-flex; align-items: center; gap: .75rem; padding-block: .35rem; border-bottom: 1px solid currentColor; font-size: .72rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; transition: color .25s ease, border-color .25s ease; }
    body.page-home .text-link::after{ content: "→"; font-size: 1rem; transition: transform .3s var(--ease); }
    body.page-home .text-link:hover{ color: var(--metal); }
    body.page-home .text-link:hover::after{ transform: translateX(.35rem); }
    body.page-home .reveal{ opacity: 0; transform: translateY(1.5rem); transition: opacity .9s var(--ease), transform .9s var(--ease); }
    body.page-home .reveal.is-visible{ opacity: 1; transform: none; }

    /* Header */
    body.page-home .site-header{ position: fixed; inset: 0 0 auto; z-index: 100; color: var(--canvas); background: transparent; border: 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
    body.page-home .site-header.is-scrolled{ color: var(--canvas); background: rgba(14, 24, 34, .96); border: 0; backdrop-filter: none; -webkit-backdrop-filter: none; }
    body.page-home .nav{ min-height: 5.5rem; display: grid; grid-template-columns: 10rem 1fr auto; align-items: center; gap: 2rem; transition: min-height .35s ease; }
    body.page-home .is-scrolled .nav{ min-height: 4.5rem; }
    body.page-home .logo{ width: 8.8rem; color: currentColor; }
    body.page-home .logo svg{ width: 100%; height: auto; }
    body.page-home .logo path{ fill: currentColor !important; }
    body.page-home .nav-links{ display: flex; justify-content: center; align-items: center; gap: clamp(1.2rem, 2.4vw, 2.4rem); }
    body.page-home .nav-link, body.page-home .nav-cta, body.page-home .menu-toggle{ font-size: .7rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; }
    body.page-home .nav-link{ opacity: .74; transition: opacity .25s ease, color .25s ease; }
    body.page-home .nav-link:hover{ opacity: 1; color: var(--metal); }
    body.page-home .nav-cta{ justify-self: end; border-bottom: 1px solid currentColor; padding-block: .35rem; }
    body.page-home .menu-toggle{ display: none; justify-self: end; border: 0; padding: .5rem 0; background: transparent; cursor: pointer; }
    body.page-home .mobile-menu{ display: none; }

    /* Hero */
    body.page-home .hero-track{ height: 150svh; background: var(--night); }
    body.page-home .hero{ position: sticky; top: 0; height: 100svh; overflow: hidden; background: var(--night); }
    body.page-home .hero-media{ position: absolute; inset: 0; overflow: hidden; background: radial-gradient(circle at 50% 45%, #26313A 0%, #15212B 34%, #0E1822 74%); }
    body.page-home .hero-media::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom, rgba(14,24,34,.12), transparent 55%, rgba(14,24,34,.5)); pointer-events: none; }
    body.page-home .hero-video{ width: 100%; height: 100%; object-fit: cover; }
    body.page-home .hero-placeholder{ position: absolute; inset: 0; display: grid; place-items: center; }
    body.page-home .machine-placeholder{ position: relative; width: min(70vw, 62rem); aspect-ratio: 16/10; filter: drop-shadow(0 2.8rem 2.2rem rgba(0,0,0,.32)); }
    body.page-home .machine-base{ position: absolute; left: 9%; right: 9%; bottom: 14%; height: 13%; border: 1px solid rgba(140,120,85,.55); background: linear-gradient(180deg, #26313A, #101820); }
    body.page-home .machine-rail{ position: absolute; left: 15%; right: 15%; top: 47%; height: 2px; background: linear-gradient(90deg, transparent, var(--metal) 18%, #B7A17C 50%, var(--metal) 82%, transparent); opacity: .72; }
    body.page-home .machine-wheel{ position: absolute; top: 19%; width: 28%; aspect-ratio: 1; border: 1px solid rgba(183,161,124,.75); border-radius: 50%; box-shadow: inset 0 0 0 .8rem rgba(140,120,85,.05), inset 0 0 0 calc(.8rem + 1px) rgba(183,161,124,.18); animation: rotate 24s linear infinite; }
    body.page-home .machine-wheel--left{ left: 18%; } body.page-home .machine-wheel--right{ right: 18%; animation-direction: reverse; animation-duration: 28s; }
    body.page-home .machine-wheel::before, body.page-home .machine-wheel::after{ content: ""; position: absolute; border: 1px solid rgba(183,161,124,.35); border-radius: 50%; }
    body.page-home .machine-wheel::before{ inset: 14%; } body.page-home .machine-wheel::after{ inset: 41%; background: #111B24; }
    body.page-home .spoke{ position: absolute; left: 50%; top: 0; bottom: 0; width: 1px; background: rgba(183,161,124,.38); transform-origin: center; }
    body.page-home .spoke:nth-child(2){ transform: rotate(45deg); } body.page-home .spoke:nth-child(3){ transform: rotate(90deg); } body.page-home .spoke:nth-child(4){ transform: rotate(135deg); }
    body.page-home .machine-chain{ position: absolute; left: 32%; right: 32%; top: 33%; height: 34%; border-block: 1px dashed rgba(183,161,124,.35); transform: skewY(-3deg); }
    body.page-home .media-note{ position: absolute; right: var(--page-gutter); bottom: 1.6rem; z-index: 2; color: rgba(244,241,235,.42); font-size: .62rem; letter-spacing: .2em; text-transform: uppercase; }
    body.page-home .scroll-cue{ position: absolute; bottom: 1.8rem; left: 50%; z-index: 3; transform: translateX(-50%); color: rgba(244,241,235,.58); font-size: .62rem; letter-spacing: .2em; text-align: center; text-transform: uppercase; transition: opacity .25s ease; }
    body.page-home .scroll-cue::after{ content: ""; display: block; width: 1px; height: 2.2rem; margin: .7rem auto 0; background: rgba(244,241,235,.42); animation: cue 2.5s ease-in-out infinite; }

    /* Statement */
    body.page-home .statement{ min-height: 92svh; display: grid; place-items: center; padding-block: var(--section-space); }
    body.page-home .statement-inner{ width: min(100%, 75rem); text-align: center; }
    body.page-home .statement h1{ margin-bottom: 0; }
    body.page-home .statement-copy{ width: min(100%, 42rem); margin-inline: auto; color: var(--ink-muted); font-size: clamp(1.2rem, 1.65vw, 1.65rem); line-height: 1.5; }

    /* Shared section headers */
    body.page-home .section-head{ display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr); gap: clamp(3rem, 8vw, 8rem); align-items: end; margin-bottom: clamp(4rem, 8vw, 7rem); }
    body.page-home .section-head h2{ margin-bottom: 0; }
    body.page-home .section-intro{ margin: 0 0 .5rem; color: var(--ink-muted); max-width: 30rem; }

    /* Graceful stop */
    body.page-home .graceful-grid{ display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(22rem, .6fr); min-height: 100svh; }
    body.page-home .graceful-media{ position: relative; min-height: 44rem; overflow: hidden; background: radial-gradient(circle at 45% 45%, #26313A, #0E1822 68%); }
    body.page-home .graceful-media .machine-placeholder{ position: absolute; top: 50%; left: 50%; width: 82%; transform: translate(-50%, -50%); }
    body.page-home .graceful-copy{ display: flex; align-items: center; padding: clamp(4rem, 8vw, 8rem) var(--page-gutter); border-left: 1px solid var(--line-dark); }
    body.page-home .graceful-copy p{ max-width: 29rem; color: rgba(244,241,235,.66); }

    /* Movement Series */
    body.page-home .product{ display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(19rem, .55fr); gap: clamp(3rem, 6vw, 6rem); align-items: center; }
    body.page-home .product-media{ position: relative; aspect-ratio: 16/10; overflow: hidden; background: radial-gradient(circle at 50% 43%, #26313A, #0E1822 70%); }
    body.page-home .product-media .machine-placeholder{ position: absolute; top: 50%; left: 50%; width: 78%; transform: translate(-50%, -50%) scale(.82); }
    body.page-home .product-media__photo{ display: block; width: 100%; height: 100%; object-fit: cover; }
    body.page-home .product-index{ position: absolute; top: 1.4rem; left: 1.5rem; z-index: 2; color: rgba(244,241,235,.55); font-size: .7rem; letter-spacing: .15em; }
    body.page-home .product-kicker{ color: var(--metal); font-size: .68rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; }
    body.page-home .product-copy h3{ margin: 1rem 0 1.25rem; }
    body.page-home .product-copy p{ max-width: 26rem; color: var(--ink-muted); margin-bottom: 2rem; }

    /* Commission */
    body.page-home .commission-card{ display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); min-height: 42rem; background: var(--canvas); }
    body.page-home .commission-image{ position: relative; overflow: hidden; background: radial-gradient(circle at 50% 43%, #26313A, #0E1822 70%); }
    body.page-home .commission-image__photo{ display: block; width: 100%; height: 100%; object-fit: contain; }
    body.page-home .caliper{ position: absolute; top: 50%; left: 50%; width: 62%; height: 16%; transform: translate(-50%, -50%) rotate(-8deg); border-block: 2px solid rgba(27,27,27,.42); }
    body.page-home .caliper::before{ content: ""; position: absolute; left: 7%; top: -6rem; width: 1px; height: 12rem; background: rgba(27,27,27,.42); }
    body.page-home .caliper::after{ content: ""; position: absolute; right: 15%; top: -4rem; width: 1px; height: 8rem; background: rgba(27,27,27,.42); }
    body.page-home .commission-copy{ display: flex; flex-direction: column; justify-content: center; padding: clamp(3rem, 6vw, 6rem); }
    body.page-home .commission-copy p{ max-width: 33rem; color: var(--ink-muted); }

    /* Materials */
    body.page-home .materials-grid{ display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
    body.page-home .material{ position: relative; aspect-ratio: 3/4; display: flex; align-items: end; padding: 1.25rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); overflow: hidden; }
    body.page-home .material::before{ content: ""; position: absolute; inset: 0; transition: transform .7s var(--ease); }
    body.page-home .material:nth-child(1)::before{ background: linear-gradient(115deg, #2C211B, #796352 48%, #31251E); }
    body.page-home .material:nth-child(2)::before{ background: linear-gradient(115deg, #6F5D3F, #B2A079 48%, #756443); }
    body.page-home .material:nth-child(3)::before{ background: linear-gradient(115deg, #40372E, #756249 48%, #322C26); }
    body.page-home .material:nth-child(4)::before{ background: linear-gradient(115deg, #11181D, #394149 48%, #12181D); }
    body.page-home .material:hover::before{ transform: scale(1.025); }
    body.page-home .material span{ position: relative; z-index: 1; color: var(--canvas); font-size: .72rem; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; }

    /* Atelier */
    body.page-home .atelier-grid{ display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(20rem, .9fr); gap: clamp(4rem, 8vw, 9rem); align-items: center; }
    body.page-home .atelier-image{ position: relative; min-height: 44rem; overflow: hidden; background: linear-gradient(135deg, rgba(140,120,85,.16), transparent), repeating-linear-gradient(90deg, transparent 0 10%, rgba(244,241,235,.025) 10% 10.15%), #14222D; }
    body.page-home .atelier-image__photo{ position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
    body.page-home .atelier-copy p{ max-width: 31rem; color: rgba(244,241,235,.66); }

    /* Journal */
    body.page-home .journal-grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(2rem, 4vw, 4rem); }
    body.page-home .article{ display:block; }
    body.page-home .article-image{ aspect-ratio: 4/3; margin-bottom: 1.5rem; background: radial-gradient(circle at 50% 45%, rgba(140,120,85,.22), transparent 38%), #17242E; overflow: hidden; }
    body.page-home .article-image__photo{ display: block; width: 100%; height: 100%; object-fit: cover; }
    body.page-home .article-image__photo--contain{ object-fit: contain; }
    body.page-home .article-meta{ margin-bottom: 1rem; color: var(--metal); font-size: .68rem; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; }
    body.page-home .article h3{ font-size: clamp(1.75rem, 2.3vw, 2.6rem); margin-bottom: 1rem; }
    body.page-home .article p{ color: var(--ink-muted); font-size: .95rem; }

    /* Journal subscription */
    body.page-home .journal-subscription{ margin-top: var(--section-space); }
    body.page-home .enquiry-grid{ display: grid; grid-template-columns: minmax(0,.75fr) minmax(24rem,1.25fr); gap: clamp(4rem,9vw,10rem); align-items: start; }
    body.page-home .enquiry-copy p{ max-width: 32rem; margin: 2rem 0 0; color: var(--ink-muted); }
    body.page-home .subscription-fields{ display: flex; gap: 1rem; width: 100%; }
    body.page-home .enquiry-form input{ width: 100%; min-width: 0; height: 4rem; padding: 0 1.25rem; border: 1px solid var(--line); background: var(--canvas); color: var(--ink); font: inherit; border-radius: 0; }
    body.page-home .enquiry-form input:focus{ border-color: var(--metal); outline: none; }
    body.page-home .button{ display: flex; align-items: center; justify-content: center; width: 100%; min-height: 3.3rem; margin-top: 2rem; padding: .9rem 1.5rem; border: 1px solid var(--ink); background: transparent; color: var(--ink); font-size: .72rem; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; cursor: pointer; transition: background .3s,color .3s,border-color .3s; }
    body.page-home .button:hover, body.page-home .button:focus-visible{ background: var(--ink); color: var(--canvas); }

    /* Final invitation */
    body.page-home .final-invitation{ min-height: 75svh; display: grid; place-items: center; padding: var(--section-space) var(--page-gutter); text-align: center; }
    body.page-home .final-invitation h2{ max-width: 62rem; margin-bottom: 2.5rem; }

    /* Footer */
    body.page-home .site-footer{ background: var(--night); color: var(--canvas); padding: clamp(5rem, 8vw, 8rem) var(--page-gutter) 2rem; }
    body.page-home .footer-top{ width: min(100%, var(--content-width)); margin-inline: auto; display: grid; grid-template-columns: 1.7fr repeat(3, 1fr); gap: clamp(2.5rem, 6vw, 6rem); padding-bottom: 5rem; border-bottom: 1px solid var(--line-dark); }
    body.page-home .footer-logo{ display: block; width: 95px; max-width: 95px; margin: 0 0 1.25rem; color: var(--canvas); }
    body.page-home .footer-logo svg{ width: 100%; }
    body.page-home .footer-logo path{ fill: currentColor !important; }
    body.page-home .footer-tag{ max-width: 22rem; margin: 0; color: rgba(244,241,235,.56); font-size: .9rem; }
    body.page-home .footer-title{ margin-bottom: 1.3rem; color: rgba(244,241,235,.45); font-size: .65rem; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; }
    body.page-home .footer-col{ display: flex; flex-direction: column; align-items: flex-start; gap: .7rem; }
    body.page-home .footer-col a{ color: rgba(244,241,235,.78); font-size: .86rem; transition: color .25s ease; }
    body.page-home .footer-col a:hover{ color: var(--metal); }
    body.page-home .footer-bottom{ width: min(100%, var(--content-width)); margin: 2rem auto 0; display: flex; justify-content: space-between; gap: 2rem; color: rgba(244,241,235,.42); font-size: .7rem; letter-spacing: .04em; }

    @keyframes rotate { to { transform: rotate(360deg); } }
    @keyframes cue { 0%,100% { transform: scaleY(.45); transform-origin: top; opacity: .4; } 50% { transform: scaleY(1); opacity: 1; } }

    @media (max-width: 64rem) {
      body.page-home .nav{ grid-template-columns: 1fr auto; }
      body.page-home .nav-links, body.page-home .nav-cta{ display: none; }
      body.page-home .menu-toggle{ display: block; }
      body.page-home .mobile-menu{ position: fixed; inset: 0; z-index: 90; display: grid; align-content: center; gap: 1.5rem; padding: 7rem var(--page-gutter) 3rem; background: var(--night); color: var(--canvas); transform: translateY(-100%); transition: transform .55s var(--ease); }
      body.page-home .mobile-menu.is-open{ transform: none; }
      body.page-home .mobile-menu a{ font-size: clamp(2.2rem, 8vw, 4.5rem); font-weight: 300; letter-spacing: -.03em; }
      body.page-home .section-head, body.page-home .graceful-grid, body.page-home .product, body.page-home .commission-card, body.page-home .atelier-grid, body.page-home .enquiry-grid{ grid-template-columns: 1fr; }
      body.page-home .graceful-copy{ border-left: 0; border-top: 1px solid var(--line-dark); }
      body.page-home .graceful-media{ min-height: 62svh; }
      body.page-home .product-copy{ max-width: 36rem; }
      body.page-home .materials-grid{ grid-template-columns: repeat(2, 1fr); }
      body.page-home .atelier-image{ min-height: 0; }
      body.page-home .atelier-image__photo{ position: static; height: auto; object-fit: contain; }
      body.page-home .journal-grid{ grid-template-columns: 1fr; gap: 4rem; }
      body.page-home .article{ max-width: 44rem; }
      body.page-home .footer-top{ grid-template-columns: 1.5fr 1fr 1fr; }
      body.page-home .footer-brand-col{ grid-column: 1 / -1; }
    }

    @media (max-width: 42rem) {
      body.page-home .nav{ min-height: 4.75rem; }
      body.page-home .logo{ width: 7.5rem; }
      body.page-home .hero-track{ height: 130svh; }
      body.page-home .machine-placeholder{ width: 92vw; }
      body.page-home .statement{ min-height: auto; }
      body.page-home .statement h1{ font-size: clamp(3.8rem, 16vw, 5.5rem); }
      body.page-home .section-head{ gap: 2rem; }
      body.page-home .materials-grid{ grid-template-columns: 1fr; }
      body.page-home .material{ aspect-ratio: 16/10; }
      body.page-home .footer-top{ grid-template-columns: 1fr 1fr; }
      body.page-home .footer-bottom{ flex-direction: column; }
      body.page-home .media-note{ display: none; }
      body.page-home .subscription-fields{ flex-direction: column; }
    }

    @media (prefers-reduced-motion: reduce) {
      html{ scroll-behavior: auto; }
      body.page-home *, body.page-home *::before, body.page-home *::after{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
      body.page-home .reveal{ opacity: 1; transform: none; }
    }
  

/* ===== MACHINE ===== */


    body.page-machine{
      --canvas:#F4F1EB; --canvas-secondary:#ECE7DE; --ink:#1B1B1B; --ink-muted:#67625A;
      --night:#0E1822; --metal:#8C7855; --line:rgba(27,27,27,.14); --line-dark:rgba(244,241,235,.16);
      --page-gutter:clamp(1.5rem,4.5vw,5rem); --section-space:clamp(7rem,12vw,12rem);
      --content-width:90rem; --copy-width:44rem;
      --sans:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
      --editorial:"GT Sectra Fine",Canela,Georgia,serif;
      --ease:cubic-bezier(.16,1,.3,1); --header-height:5.5rem;
    }
    body.page-machine *, body.page-machine *::before, body.page-machine *::after{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--canvas)}
    body.page-machine{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.35vw + .94rem,1.19rem);font-weight:400;line-height:1.58;-webkit-font-smoothing:antialiased}
    body.page-machine.menu-open{overflow:hidden} body.page-machine a{color:inherit;text-decoration:none} body.page-machine svg{display:block;max-width:100%}
    body.page-machine button{font:inherit} body.page-machine .shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));margin-inline:auto}
    body.page-machine .skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;background:var(--canvas);color:var(--ink);transform:translateY(-160%)}
    body.page-machine .skip-link:focus{transform:none}
    body.page-machine .site-header{position:fixed;inset:0 0 auto;z-index:100;color:var(--canvas);background:transparent;transition:background .45s var(--ease),color .45s var(--ease)}
    body.page-machine .site-header.is-scrolled{background:rgba(14,24,34,.96)}
    body.page-machine .nav{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}
    body.page-machine .logo{width:clamp(7.6rem,10vw,10rem);color:currentColor} body.page-machine .logo svg{width:100%} body.page-machine .logo path{fill:currentColor!important}
    body.page-machine .nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,2.4vw,2.8rem)}
    body.page-machine .nav-link, body.page-machine .nav-cta, body.page-machine .menu-toggle{font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-machine .nav-link, body.page-machine .nav-cta{position:relative;padding:.7rem 0}
    body.page-machine .nav-link::after, body.page-machine .nav-cta::after{content:"";position:absolute;left:0;right:.20em;bottom:.42rem;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
    body.page-machine .nav-link:hover::after, body.page-machine .nav-link:focus-visible::after, body.page-machine .nav-cta:hover::after, body.page-machine .nav-cta:focus-visible::after{transform:scaleX(1);transform-origin:left}
    body.page-machine .menu-toggle{display:none;border:0;background:none;color:inherit;padding:.7rem 0;cursor:pointer}
    body.page-machine .mobile-menu{display:none}
    body.page-machine .commission-hero{min-height:78svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,10vw,9rem)}
    body.page-machine .commission-hero__grid{display:grid;grid-template-columns:1fr;gap:clamp(3rem,8vw,8rem);align-items:end}
    body.page-machine .commission-hero h1{margin:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.9;letter-spacing:-.055em;overflow-wrap:normal;white-space:nowrap}
    body.page-machine .eyebrow{margin:0 0 1.2rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-machine h1, body.page-machine h2, body.page-machine h3, body.page-machine p{margin-top:0} body.page-machine h1{margin-bottom:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.91;letter-spacing:-.055em}
    body.page-machine .hero-copy{margin:0;color:rgba(244,241,235,.72);max-width:30rem;font-size:clamp(1.05rem,1.35vw,1.3rem)}
    body.page-machine .intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-machine .intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-machine h2{margin-bottom:0;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-machine .intro-copy{max-width:32rem;color:var(--ink-muted)} body.page-machine .intro-copy p{margin-bottom:1.6rem}
    body.page-machine .editorial{font-family:var(--editorial);font-style:italic;font-weight:400}
    body.page-machine .text-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
    body.page-machine .text-link::after{content:"↗";color:var(--metal);transition:transform .3s var(--ease)} body.page-machine .text-link:hover::after{transform:translate(.2rem,-.2rem)}
    body.page-machine .series{padding:0 0 var(--section-space);background:var(--canvas)}
    body.page-machine .series-media{position:relative;min-height:min(78vw,58rem);background:var(--canvas-secondary);overflow:hidden}
    body.page-machine .series-media__photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain}
    body.page-machine .series-placeholder{position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%)}
    body.page-machine .mechanism{position:absolute;left:50%;top:50%;width:min(72vw,58rem);height:min(40vw,31rem);transform:translate(-50%,-46%)}
    body.page-machine .rail{position:absolute;left:5%;right:5%;bottom:15%;height:2px;background:rgba(244,241,235,.24)}
    body.page-machine .base{position:absolute;left:15%;right:15%;bottom:7%;height:4%;border:1px solid rgba(140,120,85,.65)}
    body.page-machine .wheel{position:absolute;top:12%;width:34%;aspect-ratio:1;border:1px solid rgba(140,120,85,.7);border-radius:50%}
    body.page-machine .wheel::before, body.page-machine .wheel::after{content:"";position:absolute;inset:17%;border:1px solid rgba(244,241,235,.22);border-radius:50%}
    body.page-machine .wheel::after{inset:45%;background:var(--metal);border:0}
    body.page-machine .wheel--left{left:9%} body.page-machine .wheel--right{right:9%}
    body.page-machine .chain{position:absolute;left:26%;right:26%;top:47%;height:1px;border-top:1px dashed rgba(140,120,85,.75)}
    body.page-machine .media-label{position:absolute;left:var(--page-gutter);bottom:var(--page-gutter);color:rgba(244,241,235,.54);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-machine .series-info{padding-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,8vw,9rem)}
    body.page-machine .series-title{font-size:clamp(3rem,5vw,5.3rem);font-weight:300;line-height:1;letter-spacing:-.04em;margin-bottom:0}
    body.page-machine .series-description{max-width:38rem;color:var(--ink-muted)}
    body.page-machine .series-meta{display:grid;align-content:start;gap:0;border-top:1px solid var(--line)}
    body.page-machine .meta-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.78rem}
    body.page-machine .meta-row dt{color:var(--ink-muted);letter-spacing:.12em;text-transform:uppercase} body.page-machine .meta-row dd{margin:0;text-align:right}
    body.page-machine .invitation{padding:var(--section-space) 0;background:var(--canvas-secondary);text-align:center}
    body.page-machine .invitation h2{max-width:58rem;margin:0 auto 2rem}
    body.page-machine .button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.9rem 1.5rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
    body.page-machine .button:hover, body.page-machine .button:focus-visible{background:var(--ink);color:var(--canvas)}
    body.page-machine .site-footer{background:var(--night);color:var(--canvas);padding:clamp(5rem,9vw,8rem) var(--page-gutter) 2rem}
    body.page-machine .footer-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--line-dark)}
    body.page-machine .footer-logo{display:block;width:95px;max-width:95px;margin:0 0 1.25rem;color:var(--canvas)} body.page-machine .footer-logo svg{width:100%} body.page-machine .footer-logo path{fill:currentColor!important}
    body.page-machine .footer-tag{max-width:20rem;color:rgba(244,241,235,.6);font-size:.9rem}
    body.page-machine .footer-title{margin-bottom:1.25rem;color:rgba(244,241,235,.45);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-machine .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.88rem}
    body.page-machine .footer-col a:hover{color:var(--metal)}
    body.page-machine .footer-bottom{max-width:var(--content-width);margin:2rem auto 0;display:flex;justify-content:space-between;gap:2rem;color:rgba(244,241,235,.45);font-size:.72rem}
    body.page-machine .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .9s var(--ease),transform .9s var(--ease)} body.page-machine .reveal.is-visible{opacity:1;transform:none}
    body.page-machine :focus-visible{outline:1px solid var(--metal);outline-offset:4px}
    @media(max-width:900px){
      body.page-machine .nav{grid-template-columns:auto 1fr auto} body.page-machine .nav-links, body.page-machine .nav-cta{display:none} body.page-machine .menu-toggle{display:block;justify-self:end}
      body.page-machine .mobile-menu{position:fixed;inset:0;z-index:90;background:var(--night);color:var(--canvas);padding:8rem var(--page-gutter) 3rem;flex-direction:column;gap:1.4rem;font-size:clamp(1.8rem,7vw,3.5rem);font-weight:300;letter-spacing:-.03em}
      body.page-machine .mobile-menu.is-open{display:flex}
      body.page-machine .commission-hero__grid, body.page-machine .intro-grid, body.page-machine .series-info{grid-template-columns:1fr}
      body.page-machine .hero-copy{max-width:36rem}
      body.page-machine .footer-grid{grid-template-columns:1fr 1fr} body.page-machine .footer-brand-col{grid-column:1/-1}
    }
    @media(max-width:600px){
      body.page-machine{--header-height:4.8rem} body.page-machine h1{font-size:clamp(3.8rem,18vw,6rem)}
      body.page-machine .series-media{min-height:85svh} body.page-machine .mechanism{width:92vw;height:52vw}
      body.page-machine .footer-grid{grid-template-columns:1fr} body.page-machine .footer-bottom{flex-direction:column}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-machine *, body.page-machine *::before, body.page-machine *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-machine .reveal{opacity:1;transform:none}}
  

/* ===== COMMISSION ===== */


    body.page-commission{
      --canvas:#F4F1EB; --canvas-secondary:#ECE7DE; --ink:#1B1B1B; --ink-muted:#67625A;
      --night:#0E1822; --metal:#8C7855; --line:rgba(27,27,27,.14); --line-dark:rgba(244,241,235,.16);
      --page-gutter:clamp(1.5rem,4.5vw,5rem); --section-space:clamp(7rem,12vw,12rem);
      --content-width:90rem; --copy-width:44rem;
      --sans:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
      --editorial:"GT Sectra Fine",Canela,Georgia,serif;
      --ease:cubic-bezier(.16,1,.3,1); --header-height:5.5rem;
    }
    body.page-commission *, body.page-commission *::before, body.page-commission *::after{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--canvas)}
    body.page-commission{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.35vw + .94rem,1.19rem);font-weight:400;line-height:1.58;-webkit-font-smoothing:antialiased}
    body.page-commission.menu-open{overflow:hidden} body.page-commission a{color:inherit;text-decoration:none} body.page-commission svg{display:block;max-width:100%}
    body.page-commission button{font:inherit} body.page-commission .shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));margin-inline:auto}
    body.page-commission .skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;background:var(--canvas);color:var(--ink);transform:translateY(-160%)}
    body.page-commission .skip-link:focus{transform:none}
    body.page-commission .site-header{position:fixed;inset:0 0 auto;z-index:100;color:var(--canvas);background:transparent;transition:background .45s var(--ease),color .45s var(--ease)}
    body.page-commission .site-header.is-scrolled{background:rgba(14,24,34,.96)}
    body.page-commission .nav{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}
    body.page-commission .logo{width:clamp(7.6rem,10vw,10rem);color:currentColor} body.page-commission .logo svg{width:100%} body.page-commission .logo path{fill:currentColor!important}
    body.page-commission .nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,2.4vw,2.8rem)}
    body.page-commission .nav-link, body.page-commission .nav-cta, body.page-commission .menu-toggle{font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-commission .nav-link, body.page-commission .nav-cta{position:relative;padding:.7rem 0}
    body.page-commission .nav-link::after, body.page-commission .nav-cta::after{content:"";position:absolute;left:0;right:.20em;bottom:.42rem;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
    body.page-commission .nav-link:hover::after, body.page-commission .nav-link:focus-visible::after, body.page-commission .nav-cta:hover::after, body.page-commission .nav-cta:focus-visible::after{transform:scaleX(1);transform-origin:left}
    body.page-commission .menu-toggle{display:none;border:0;background:none;color:inherit;padding:.7rem 0;cursor:pointer}
    body.page-commission .mobile-menu{display:none}
    body.page-commission .page-hero{min-height:70svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,9vw,8rem)}
    body.page-commission .page-hero__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);gap:clamp(3rem,8vw,9rem);align-items:end}
    body.page-commission .eyebrow{margin:0 0 1.2rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-commission h1, body.page-commission h2, body.page-commission h3, body.page-commission p{margin-top:0} body.page-commission h1{margin-bottom:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.91;letter-spacing:-.055em}
    body.page-commission .hero-copy{margin:0;color:rgba(244,241,235,.72);max-width:30rem;font-size:clamp(1.05rem,1.35vw,1.3rem)}
    body.page-commission .intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-commission .intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-commission h2{margin-bottom:0;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-commission .intro-copy{max-width:32rem;color:var(--ink-muted)} body.page-commission .intro-copy p{margin-bottom:1.6rem}
    body.page-commission .editorial{font-family:var(--editorial);font-style:italic;font-weight:400}
    body.page-commission .text-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
    body.page-commission .text-link::after{content:"↗";color:var(--metal);transition:transform .3s var(--ease)} body.page-commission .text-link:hover::after{transform:translate(.2rem,-.2rem)}
    body.page-commission .series{padding:0 0 var(--section-space);background:var(--canvas)}
    body.page-commission .series-media{position:relative;min-height:min(78vw,58rem);background:var(--night);overflow:hidden}
    body.page-commission .series-placeholder{position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%)}
    body.page-commission .mechanism{position:absolute;left:50%;top:50%;width:min(72vw,58rem);height:min(40vw,31rem);transform:translate(-50%,-46%)}
    body.page-commission .rail{position:absolute;left:5%;right:5%;bottom:15%;height:2px;background:rgba(244,241,235,.24)}
    body.page-commission .base{position:absolute;left:15%;right:15%;bottom:7%;height:4%;border:1px solid rgba(140,120,85,.65)}
    body.page-commission .wheel{position:absolute;top:12%;width:34%;aspect-ratio:1;border:1px solid rgba(140,120,85,.7);border-radius:50%}
    body.page-commission .wheel::before, body.page-commission .wheel::after{content:"";position:absolute;inset:17%;border:1px solid rgba(244,241,235,.22);border-radius:50%}
    body.page-commission .wheel::after{inset:45%;background:var(--metal);border:0}
    body.page-commission .wheel--left{left:9%} body.page-commission .wheel--right{right:9%}
    body.page-commission .chain{position:absolute;left:26%;right:26%;top:47%;height:1px;border-top:1px dashed rgba(140,120,85,.75)}
    body.page-commission .media-label{position:absolute;left:var(--page-gutter);bottom:var(--page-gutter);color:rgba(244,241,235,.54);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-commission .series-info{padding-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,8vw,9rem)}
    body.page-commission .series-title{font-size:clamp(3rem,5vw,5.3rem);font-weight:300;line-height:1;letter-spacing:-.04em;margin-bottom:1.25rem}
    body.page-commission .series-description{max-width:38rem;color:var(--ink-muted)}
    body.page-commission .series-meta{display:grid;align-content:start;gap:0;border-top:1px solid var(--line)}
    body.page-commission .meta-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.78rem}
    body.page-commission .meta-row dt{color:var(--ink-muted);letter-spacing:.12em;text-transform:uppercase} body.page-commission .meta-row dd{margin:0;text-align:right}
    body.page-commission .invitation{padding:var(--section-space) 0;background:var(--canvas-secondary);text-align:center}
    body.page-commission .invitation h2{max-width:58rem;margin:0 auto 2rem}
    body.page-commission .button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.9rem 1.5rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
    body.page-commission .button:hover, body.page-commission .button:focus-visible{background:var(--ink);color:var(--canvas)}
    body.page-commission .site-footer{background:var(--night);color:var(--canvas);padding:clamp(5rem,9vw,8rem) var(--page-gutter) 2rem}
    body.page-commission .footer-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--line-dark)}
    body.page-commission .footer-logo{display:block;width:95px;max-width:95px;margin:0 0 1.25rem;color:var(--canvas)} body.page-commission .footer-logo svg{width:100%} body.page-commission .footer-logo path{fill:currentColor!important}
    body.page-commission .footer-tag{max-width:20rem;color:rgba(244,241,235,.6);font-size:.9rem}
    body.page-commission .footer-title{margin-bottom:1.25rem;color:rgba(244,241,235,.45);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-commission .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.88rem}
    body.page-commission .footer-col a:hover{color:var(--metal)}
    body.page-commission .footer-bottom{max-width:var(--content-width);margin:2rem auto 0;display:flex;justify-content:space-between;gap:2rem;color:rgba(244,241,235,.45);font-size:.72rem}
    body.page-commission .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .9s var(--ease),transform .9s var(--ease)} body.page-commission .reveal.is-visible{opacity:1;transform:none}
    body.page-commission :focus-visible{outline:1px solid var(--metal);outline-offset:4px}
    @media(max-width:900px){
      body.page-commission .nav{grid-template-columns:auto 1fr auto} body.page-commission .nav-links, body.page-commission .nav-cta{display:none} body.page-commission .menu-toggle{display:block;justify-self:end}
      body.page-commission .mobile-menu{position:fixed;inset:0;z-index:90;background:var(--night);color:var(--canvas);padding:8rem var(--page-gutter) 3rem;flex-direction:column;gap:1.4rem;font-size:clamp(1.8rem,7vw,3.5rem);font-weight:300;letter-spacing:-.03em}
      body.page-commission .mobile-menu.is-open{display:flex}
      body.page-commission .page-hero__inner, body.page-commission .intro-grid, body.page-commission .series-info{grid-template-columns:1fr}
      body.page-commission .page-hero{min-height:78svh} body.page-commission .hero-copy{max-width:36rem}
      body.page-commission .footer-grid{grid-template-columns:1fr 1fr} body.page-commission .footer-brand-col{grid-column:1/-1}
    }
    @media(max-width:600px){
      body.page-commission{--header-height:4.8rem} body.page-commission h1{font-size:clamp(3.8rem,18vw,6rem)}
      body.page-commission .series-media{min-height:85svh} body.page-commission .mechanism{width:92vw;height:52vw}
      body.page-commission .footer-grid{grid-template-columns:1fr} body.page-commission .footer-bottom{flex-direction:column}
    }

    /* Commission page */
    body.page-commission .commission-hero{min-height:78svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,10vw,9rem)}
    body.page-commission .commission-hero__grid{display:grid;grid-template-columns:1fr;gap:clamp(3rem,8vw,8rem);align-items:end}
    body.page-commission .commission-hero h1{margin:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.9;letter-spacing:-.055em;overflow-wrap:normal;white-space:nowrap}
    body.page-commission .commission-hero p{margin:0;max-width:31rem;color:rgba(244,241,235,.72);font-size:clamp(1.05rem,.5vw + .95rem,1.3rem)}
    body.page-commission .commission-intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-commission .commission-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-commission .commission-intro h2, body.page-commission .journey h2, body.page-commission .materials h2, body.page-commission .timeline h2, body.page-commission .enquiry h2{margin:0;font-size:clamp(3rem,6vw,5.75rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-commission .commission-intro__copy{max-width:38rem;color:var(--ink-muted)}
    body.page-commission .commission-intro__copy p{margin:0 0 1.35rem}
    body.page-commission .journey{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-commission .journey-header{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(4rem,8vw,7rem)}
    body.page-commission .journey-header p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-commission .journey-list{border-top:1px solid var(--line)}
    body.page-commission .journey-step{display:grid;grid-template-columns:5rem minmax(14rem,.6fr) 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;border-bottom:1px solid var(--line);align-items:start}
    body.page-commission .journey-number{font-size:.78rem;letter-spacing:.2em;color:var(--metal)}
    body.page-commission .journey-step h3{margin:0;font-size:clamp(1.7rem,2.5vw,2.5rem);font-weight:400;letter-spacing:-.025em}
    body.page-commission .journey-step p{margin:0;color:var(--ink-muted);max-width:38rem}
    body.page-commission .materials{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-commission .materials-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(3rem,6vw,5rem)}
    body.page-commission .materials-head p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-commission .materials-media{min-height:70svh;background:var(--night);position:relative;display:grid;place-items:center;overflow:hidden}
    body.page-commission .materials-placeholder{width:min(74vw,68rem);height:min(36vw,30rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(244,241,235,.14)}
    body.page-commission .material-swatch{background:linear-gradient(145deg,rgba(140,120,85,.25),rgba(244,241,235,.03));position:relative}
    body.page-commission .material-swatch::after{content:attr(data-label);position:absolute;left:1rem;bottom:1rem;color:rgba(244,241,235,.55);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
    body.page-commission .timeline{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-commission .timeline-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1.25fr);gap:clamp(4rem,9vw,10rem)}
    body.page-commission .timeline-list{border-top:1px solid var(--line)}
    body.page-commission .timeline-row{display:grid;grid-template-columns:10rem 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}
    body.page-commission .timeline-row dt{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--metal)}
    body.page-commission .timeline-row dd{margin:0;color:var(--ink-muted)}
    body.page-commission .enquiry{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-commission .enquiry-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(24rem,1.25fr);gap:clamp(4rem,9vw,10rem);align-items:start}
    body.page-commission .enquiry-copy p{max-width:32rem;color:var(--ink-muted)}
    body.page-commission .commission-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.25rem;scroll-margin-top:calc(var(--header-height) + 2rem)}
    body.page-commission .form-status{padding:1rem;border:1px solid var(--line)}
    body.page-commission .field{display:flex;flex-direction:column;gap:.55rem}
    body.page-commission .field--full{grid-column:1/-1}
    body.page-commission .field label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
    body.page-commission .field input, body.page-commission .field select, body.page-commission .field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:.85rem 0;font:inherit;border-radius:0;outline:none}
    body.page-commission .field textarea{min-height:9rem;resize:vertical}
    body.page-commission .field input:focus, body.page-commission .field select:focus, body.page-commission .field textarea:focus{border-color:var(--metal)}
    body.page-commission .form-note{grid-column:1/-1;margin:0;color:var(--ink-muted);font-size:.82rem}
    body.page-commission .form-actions{grid-column:1/-1;padding-top:1rem}
    @media(max-width:900px){body.page-commission .commission-hero__grid, body.page-commission .commission-intro__grid, body.page-commission .journey-header, body.page-commission .materials-head, body.page-commission .timeline-grid, body.page-commission .enquiry-grid{grid-template-columns:1fr}body.page-commission .journey-step{grid-template-columns:3rem 1fr}body.page-commission .journey-step p{grid-column:2}body.page-commission .materials-placeholder{width:88vw;height:64vw}body.page-commission .commission-form{grid-template-columns:1fr}body.page-commission .field--full, body.page-commission .form-note, body.page-commission .form-actions{grid-column:auto}}

    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-commission *, body.page-commission *::before, body.page-commission *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-commission .reveal{opacity:1;transform:none}}
  

/* ===== ATELIER ===== */


    body.page-atelier{
      --canvas:#F4F1EB; --canvas-secondary:#ECE7DE; --ink:#1B1B1B; --ink-muted:#67625A;
      --night:#0E1822; --metal:#8C7855; --line:rgba(27,27,27,.14); --line-dark:rgba(244,241,235,.16);
      --page-gutter:clamp(1.5rem,4.5vw,5rem); --section-space:clamp(7rem,12vw,12rem);
      --content-width:90rem; --copy-width:44rem;
      --sans:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
      --editorial:"GT Sectra Fine",Canela,Georgia,serif;
      --ease:cubic-bezier(.16,1,.3,1); --header-height:5.5rem;
    }
    body.page-atelier *, body.page-atelier *::before, body.page-atelier *::after{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--canvas)}
    body.page-atelier{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.35vw + .94rem,1.19rem);font-weight:400;line-height:1.58;-webkit-font-smoothing:antialiased}
    body.page-atelier.menu-open{overflow:hidden} body.page-atelier a{color:inherit;text-decoration:none} body.page-atelier svg{display:block;max-width:100%}
    body.page-atelier button{font:inherit} body.page-atelier .shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));margin-inline:auto}
    body.page-atelier .skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;background:var(--canvas);color:var(--ink);transform:translateY(-160%)}
    body.page-atelier .skip-link:focus{transform:none}
    body.page-atelier .site-header{position:fixed;inset:0 0 auto;z-index:100;color:var(--canvas);background:transparent;transition:background .45s var(--ease),color .45s var(--ease)}
    body.page-atelier .site-header.is-scrolled{background:rgba(14,24,34,.96)}
    body.page-atelier .nav{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}
    body.page-atelier .logo{width:clamp(7.6rem,10vw,10rem);color:currentColor} body.page-atelier .logo svg{width:100%} body.page-atelier .logo path{fill:currentColor!important}
    body.page-atelier .nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,2.4vw,2.8rem)}
    body.page-atelier .nav-link, body.page-atelier .nav-cta, body.page-atelier .menu-toggle{font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-atelier .nav-link, body.page-atelier .nav-cta{position:relative;padding:.7rem 0}
    body.page-atelier .nav-link::after, body.page-atelier .nav-cta::after{content:"";position:absolute;left:0;right:.20em;bottom:.42rem;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
    body.page-atelier .nav-link:hover::after, body.page-atelier .nav-link:focus-visible::after, body.page-atelier .nav-cta:hover::after, body.page-atelier .nav-cta:focus-visible::after{transform:scaleX(1);transform-origin:left}
    body.page-atelier .menu-toggle{display:none;border:0;background:none;color:inherit;padding:.7rem 0;cursor:pointer}
    body.page-atelier .mobile-menu{display:none}
    body.page-atelier .page-hero{min-height:70svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,9vw,8rem)}
    body.page-atelier .page-hero__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);gap:clamp(3rem,8vw,9rem);align-items:end}
    body.page-atelier .eyebrow{margin:0 0 1.2rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-atelier h1, body.page-atelier h2, body.page-atelier h3, body.page-atelier p{margin-top:0} body.page-atelier h1{margin-bottom:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.91;letter-spacing:-.055em}
    body.page-atelier .hero-copy{margin:0;color:rgba(244,241,235,.72);max-width:30rem;font-size:clamp(1.05rem,1.35vw,1.3rem)}
    body.page-atelier .intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-atelier .intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-atelier h2{margin-bottom:0;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-atelier .intro-copy{max-width:32rem;color:var(--ink-muted)} body.page-atelier .intro-copy p{margin-bottom:1.6rem}
    body.page-atelier .editorial{font-family:var(--editorial);font-style:italic;font-weight:400}
    body.page-atelier .text-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
    body.page-atelier .text-link::after{content:"↗";color:var(--metal);transition:transform .3s var(--ease)} body.page-atelier .text-link:hover::after{transform:translate(.2rem,-.2rem)}
    body.page-atelier .series{padding:0 0 var(--section-space);background:var(--canvas)}
    body.page-atelier .series-media{position:relative;min-height:min(78vw,58rem);background:var(--night);overflow:hidden}
    body.page-atelier .series-placeholder{position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%)}
    body.page-atelier .mechanism{position:absolute;left:50%;top:50%;width:min(72vw,58rem);height:min(40vw,31rem);transform:translate(-50%,-46%)}
    body.page-atelier .rail{position:absolute;left:5%;right:5%;bottom:15%;height:2px;background:rgba(244,241,235,.24)}
    body.page-atelier .base{position:absolute;left:15%;right:15%;bottom:7%;height:4%;border:1px solid rgba(140,120,85,.65)}
    body.page-atelier .wheel{position:absolute;top:12%;width:34%;aspect-ratio:1;border:1px solid rgba(140,120,85,.7);border-radius:50%}
    body.page-atelier .wheel::before, body.page-atelier .wheel::after{content:"";position:absolute;inset:17%;border:1px solid rgba(244,241,235,.22);border-radius:50%}
    body.page-atelier .wheel::after{inset:45%;background:var(--metal);border:0}
    body.page-atelier .wheel--left{left:9%} body.page-atelier .wheel--right{right:9%}
    body.page-atelier .chain{position:absolute;left:26%;right:26%;top:47%;height:1px;border-top:1px dashed rgba(140,120,85,.75)}
    body.page-atelier .media-label{position:absolute;left:var(--page-gutter);bottom:var(--page-gutter);color:rgba(244,241,235,.54);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-atelier .materials.atelier-gallery{padding:var(--page-gutter)}
    body.page-atelier .atelier-carousel{display:block;width:100%;min-height:0!important;margin:0;aspect-ratio:3/2;background:var(--night)}
    body.page-atelier .atelier-carousel__track, body.page-atelier .atelier-carousel__slide{position:absolute;inset:0;margin:0}
    body.page-atelier .atelier-carousel__slide[hidden]{display:none}
    body.page-atelier .atelier-carousel__slide img{display:block;width:100%;height:100%;object-fit:contain}
    body.page-atelier .atelier-carousel__button{position:absolute;top:50%;z-index:2;width:3rem;height:3rem;border:1px solid rgba(244,241,235,.45);border-radius:50%;background:rgba(14,24,34,.72);color:var(--canvas);font:inherit;cursor:pointer;transform:translateY(-50%)}
    body.page-atelier .atelier-carousel__button--previous{left:var(--page-gutter)}
    body.page-atelier .atelier-carousel__button--next{right:var(--page-gutter)}
    body.page-atelier .atelier-carousel__dots{position:absolute;left:50%;bottom:1.5rem;z-index:2;display:flex;gap:.65rem;transform:translateX(-50%)}
    body.page-atelier .atelier-carousel__dots button{width:.55rem;height:.55rem;padding:0;border:1px solid var(--canvas);border-radius:50%;background:transparent;cursor:pointer}
    body.page-atelier .atelier-carousel__dots button[aria-pressed="true"]{background:var(--canvas)}
    body.page-atelier .series-info{padding-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,8vw,9rem)}
    body.page-atelier .series-title{font-size:clamp(3rem,5vw,5.3rem);font-weight:300;line-height:1;letter-spacing:-.04em;margin-bottom:1.25rem}
    body.page-atelier .series-description{max-width:38rem;color:var(--ink-muted)}
    body.page-atelier .series-meta{display:grid;align-content:start;gap:0;border-top:1px solid var(--line)}
    body.page-atelier .meta-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.78rem}
    body.page-atelier .meta-row dt{color:var(--ink-muted);letter-spacing:.12em;text-transform:uppercase} body.page-atelier .meta-row dd{margin:0;text-align:right}
    body.page-atelier .invitation{padding:var(--section-space) 0;background:var(--canvas-secondary);text-align:center}
    body.page-atelier .invitation h2{max-width:58rem;margin:0 auto 2rem}
    body.page-atelier .button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.9rem 1.5rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
    body.page-atelier .button:hover, body.page-atelier .button:focus-visible{background:var(--ink);color:var(--canvas)}
    body.page-atelier .site-footer{background:var(--night);color:var(--canvas);padding:clamp(5rem,9vw,8rem) var(--page-gutter) 2rem}
    body.page-atelier .footer-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--line-dark)}
    body.page-atelier .footer-logo{display:block;width:95px;max-width:95px;margin:0 0 1.25rem;color:var(--canvas)} body.page-atelier .footer-logo svg{width:100%} body.page-atelier .footer-logo path{fill:currentColor!important}
    body.page-atelier .footer-tag{max-width:20rem;color:rgba(244,241,235,.6);font-size:.9rem}
    body.page-atelier .footer-title{margin-bottom:1.25rem;color:rgba(244,241,235,.45);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-atelier .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.88rem}
    body.page-atelier .footer-col a:hover{color:var(--metal)}
    body.page-atelier .footer-bottom{max-width:var(--content-width);margin:2rem auto 0;display:flex;justify-content:space-between;gap:2rem;color:rgba(244,241,235,.45);font-size:.72rem}
    body.page-atelier .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .9s var(--ease),transform .9s var(--ease)} body.page-atelier .reveal.is-visible{opacity:1;transform:none}
    body.page-atelier :focus-visible{outline:1px solid var(--metal);outline-offset:4px}
    @media(max-width:900px){
      body.page-atelier .nav{grid-template-columns:auto 1fr auto} body.page-atelier .nav-links, body.page-atelier .nav-cta{display:none} body.page-atelier .menu-toggle{display:block;justify-self:end}
      body.page-atelier .mobile-menu{position:fixed;inset:0;z-index:90;background:var(--night);color:var(--canvas);padding:8rem var(--page-gutter) 3rem;flex-direction:column;gap:1.4rem;font-size:clamp(1.8rem,7vw,3.5rem);font-weight:300;letter-spacing:-.03em}
      body.page-atelier .mobile-menu.is-open{display:flex}
      body.page-atelier .page-hero__inner, body.page-atelier .intro-grid, body.page-atelier .series-info{grid-template-columns:1fr}
      body.page-atelier .page-hero{min-height:78svh} body.page-atelier .hero-copy{max-width:36rem}
      body.page-atelier .footer-grid{grid-template-columns:1fr 1fr} body.page-atelier .footer-brand-col{grid-column:1/-1}
    }
    @media(max-width:600px){
      body.page-atelier{--header-height:4.8rem} body.page-atelier h1{font-size:clamp(3.8rem,18vw,6rem)}
      body.page-atelier .series-media{min-height:85svh} body.page-atelier .mechanism{width:92vw;height:52vw}
      body.page-atelier .footer-grid{grid-template-columns:1fr} body.page-atelier .footer-bottom{flex-direction:column}
    }

    /* Commission page */
    body.page-atelier .commission-hero{min-height:78svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,10vw,9rem)}
    body.page-atelier .commission-hero__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);gap:clamp(3rem,8vw,8rem);align-items:end}
    body.page-atelier .commission-hero h1{margin:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.9;letter-spacing:-.055em}
    body.page-atelier .commission-hero p{margin:0;max-width:31rem;color:rgba(244,241,235,.72);font-size:clamp(1.05rem,.5vw + .95rem,1.3rem)}
    body.page-atelier .commission-intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-atelier .commission-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-atelier .commission-intro h2, body.page-atelier .journey h2, body.page-atelier .materials h2, body.page-atelier .timeline h2, body.page-atelier .enquiry h2{margin:0;font-size:clamp(3rem,6vw,5.75rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-atelier .commission-intro__copy{max-width:38rem;color:var(--ink-muted)}
    body.page-atelier .commission-intro__copy p{margin:0 0 1.35rem}
    body.page-atelier .journey{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-atelier .journey-header{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(4rem,8vw,7rem)}
    body.page-atelier .journey-header p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-atelier .journey-list{border-top:1px solid var(--line)}
    body.page-atelier .journey-step{display:grid;grid-template-columns:5rem minmax(14rem,.6fr) 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;border-bottom:1px solid var(--line);align-items:start}
    body.page-atelier .journey-number{font-size:.78rem;letter-spacing:.2em;color:var(--metal)}
    body.page-atelier .journey-step h3{margin:0;font-size:clamp(1.7rem,2.5vw,2.5rem);font-weight:400;letter-spacing:-.025em}
    body.page-atelier .journey-step p{margin:0;color:var(--ink-muted);max-width:38rem}
    body.page-atelier .materials{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-atelier .materials-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(3rem,6vw,5rem)}
    body.page-atelier .materials-head p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-atelier .materials-media{min-height:70svh;background:var(--night);position:relative;display:grid;place-items:center;overflow:hidden}
    body.page-atelier .materials-placeholder{width:min(74vw,68rem);height:min(36vw,30rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(244,241,235,.14)}
    body.page-atelier .material-swatch{background:linear-gradient(145deg,rgba(140,120,85,.25),rgba(244,241,235,.03));position:relative}
    body.page-atelier .material-swatch::after{content:attr(data-label);position:absolute;left:1rem;bottom:1rem;color:rgba(244,241,235,.55);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
    body.page-atelier .timeline{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-atelier .timeline-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1.25fr);gap:clamp(4rem,9vw,10rem)}
    body.page-atelier .timeline-list{border-top:1px solid var(--line)}
    body.page-atelier .timeline-row{display:grid;grid-template-columns:10rem 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}
    body.page-atelier .timeline-row dt{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--metal)}
    body.page-atelier .timeline-row dd{margin:0;color:var(--ink-muted)}
    body.page-atelier .enquiry{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-atelier .enquiry-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(24rem,1.25fr);gap:clamp(4rem,9vw,10rem);align-items:start}
    body.page-atelier .enquiry-copy p{max-width:32rem;color:var(--ink-muted)}
    body.page-atelier .commission-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.25rem}
    body.page-atelier .field{display:flex;flex-direction:column;gap:.55rem}
    body.page-atelier .field--full{grid-column:1/-1}
    body.page-atelier .field label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
    body.page-atelier .field input, body.page-atelier .field select, body.page-atelier .field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:.85rem 0;font:inherit;border-radius:0;outline:none}
    body.page-atelier .field textarea{min-height:9rem;resize:vertical}
    body.page-atelier .field input:focus, body.page-atelier .field select:focus, body.page-atelier .field textarea:focus{border-color:var(--metal)}
    body.page-atelier .form-note{grid-column:1/-1;margin:0;color:var(--ink-muted);font-size:.82rem}
    body.page-atelier .form-actions{grid-column:1/-1;padding-top:1rem}
    @media(max-width:900px){body.page-atelier .commission-hero__grid, body.page-atelier .commission-intro__grid, body.page-atelier .journey-header, body.page-atelier .materials-head, body.page-atelier .timeline-grid, body.page-atelier .enquiry-grid{grid-template-columns:1fr}body.page-atelier .journey-step{grid-template-columns:3rem 1fr}body.page-atelier .journey-step p{grid-column:2}body.page-atelier .materials-placeholder{width:88vw;height:64vw}body.page-atelier .commission-form{grid-template-columns:1fr}body.page-atelier .field--full, body.page-atelier .form-note, body.page-atelier .form-actions{grid-column:auto}}

    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-atelier *, body.page-atelier *::before, body.page-atelier *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-atelier .reveal{opacity:1;transform:none}}
  

/* ===== JOURNAL ===== */


    body.page-journal{
      --canvas:#F4F1EB; --canvas-secondary:#ECE7DE; --ink:#1B1B1B; --ink-muted:#67625A;
      --night:#0E1822; --metal:#8C7855; --line:rgba(27,27,27,.14); --line-dark:rgba(244,241,235,.16);
      --page-gutter:clamp(1.5rem,4.5vw,5rem); --section-space:clamp(3.5rem,6vw,6rem);
      --content-width:90rem; --copy-width:44rem;
      --sans:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
      --editorial:"GT Sectra Fine",Canela,Georgia,serif;
      --ease:cubic-bezier(.16,1,.3,1); --header-height:5.5rem;
    }
    body.page-journal *, body.page-journal *::before, body.page-journal *::after{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--canvas)}
    body.page-journal{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.35vw + .94rem,1.19rem);font-weight:400;line-height:1.58;-webkit-font-smoothing:antialiased}
    body.page-journal.menu-open{overflow:hidden} body.page-journal a{color:inherit;text-decoration:none} body.page-journal svg{display:block;max-width:100%}
    body.page-journal button{font:inherit} body.page-journal .shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));margin-inline:auto}
    body.page-journal .skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;background:var(--canvas);color:var(--ink);transform:translateY(-160%)}
    body.page-journal .skip-link:focus{transform:none}
    body.page-journal .site-header{position:fixed;inset:0 0 auto;z-index:100;color:var(--canvas);background:transparent;transition:background .45s var(--ease),color .45s var(--ease)}
    body.page-journal .site-header.is-scrolled{background:rgba(14,24,34,.96)}
    body.page-journal .nav{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}
    body.page-journal .logo{width:clamp(7.6rem,10vw,10rem);color:currentColor} body.page-journal .logo svg{width:100%} body.page-journal .logo path{fill:currentColor!important}
    body.page-journal .nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,2.4vw,2.8rem)}
    body.page-journal .nav-link, body.page-journal .nav-cta, body.page-journal .menu-toggle{font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-journal .nav-link, body.page-journal .nav-cta{position:relative;padding:.7rem 0}
    body.page-journal .nav-link::after, body.page-journal .nav-cta::after{content:"";position:absolute;left:0;right:.20em;bottom:.42rem;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
    body.page-journal .nav-link:hover::after, body.page-journal .nav-link:focus-visible::after, body.page-journal .nav-cta:hover::after, body.page-journal .nav-cta:focus-visible::after{transform:scaleX(1);transform-origin:left}
    body.page-journal .menu-toggle{display:none;border:0;background:none;color:inherit;padding:.7rem 0;cursor:pointer}
    body.page-journal .mobile-menu{display:none}
    body.page-journal .page-hero{min-height:70svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,9vw,8rem)}
    body.page-journal .page-hero__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);gap:clamp(3rem,8vw,9rem);align-items:end}
    body.page-journal .eyebrow{margin:0 0 1.2rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-journal h1, body.page-journal h2, body.page-journal h3, body.page-journal p{margin-top:0} body.page-journal h1{margin-bottom:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.91;letter-spacing:-.055em}
    body.page-journal .hero-copy{margin:0;color:rgba(244,241,235,.72);max-width:30rem;font-size:clamp(1.05rem,1.35vw,1.3rem)}
    body.page-journal .intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-journal .intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-journal h2{margin-bottom:0;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-journal .intro-copy{max-width:32rem;color:var(--ink-muted)} body.page-journal .intro-copy p{margin-bottom:1.6rem}
    body.page-journal .editorial{font-family:var(--editorial);font-style:italic;font-weight:400}
    body.page-journal .text-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
    body.page-journal .text-link::after{content:"↗";color:var(--metal);transition:transform .3s var(--ease)} body.page-journal .text-link:hover::after{transform:translate(.2rem,-.2rem)}
    body.page-journal .series{padding:0 0 var(--section-space);background:var(--canvas)}
    body.page-journal .series-media{position:relative;min-height:min(78vw,58rem);background:var(--night);overflow:hidden}
    body.page-journal .series-placeholder{position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%)}
    body.page-journal .mechanism{position:absolute;left:50%;top:50%;width:min(72vw,58rem);height:min(40vw,31rem);transform:translate(-50%,-46%)}
    body.page-journal .rail{position:absolute;left:5%;right:5%;bottom:15%;height:2px;background:rgba(244,241,235,.24)}
    body.page-journal .base{position:absolute;left:15%;right:15%;bottom:7%;height:4%;border:1px solid rgba(140,120,85,.65)}
    body.page-journal .wheel{position:absolute;top:12%;width:34%;aspect-ratio:1;border:1px solid rgba(140,120,85,.7);border-radius:50%}
    body.page-journal .wheel::before, body.page-journal .wheel::after{content:"";position:absolute;inset:17%;border:1px solid rgba(244,241,235,.22);border-radius:50%}
    body.page-journal .wheel::after{inset:45%;background:var(--metal);border:0}
    body.page-journal .wheel--left{left:9%} body.page-journal .wheel--right{right:9%}
    body.page-journal .chain{position:absolute;left:26%;right:26%;top:47%;height:1px;border-top:1px dashed rgba(140,120,85,.75)}
    body.page-journal .media-label{position:absolute;left:var(--page-gutter);bottom:var(--page-gutter);color:rgba(244,241,235,.54);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-journal .series-info{padding-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,8vw,9rem)}
    body.page-journal .series-title{font-size:clamp(3rem,5vw,5.3rem);font-weight:300;line-height:1;letter-spacing:-.04em;margin-bottom:1.25rem}
    body.page-journal .series-description{max-width:38rem;color:var(--ink-muted)}
    body.page-journal .series-meta{display:grid;align-content:start;gap:0;border-top:1px solid var(--line)}
    body.page-journal .meta-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.78rem}
    body.page-journal .meta-row dt{color:var(--ink-muted);letter-spacing:.12em;text-transform:uppercase} body.page-journal .meta-row dd{margin:0;text-align:right}
    body.page-journal .invitation{padding:var(--section-space) 0;background:var(--canvas-secondary);text-align:center}
    body.page-journal .invitation h2{max-width:58rem;margin:0 auto 2rem}
    body.page-journal .button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.9rem 1.5rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
    body.page-journal .button:hover, body.page-journal .button:focus-visible{background:var(--ink);color:var(--canvas)}
    body.page-journal .site-footer{background:var(--night);color:var(--canvas);padding:clamp(5rem,9vw,8rem) var(--page-gutter) 2rem}
    body.page-journal .footer-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--line-dark)}
    body.page-journal .footer-logo{display:block;width:95px;max-width:95px;margin:0 0 1.25rem;color:var(--canvas)} body.page-journal .footer-logo svg{width:100%} body.page-journal .footer-logo path{fill:currentColor!important}
    body.page-journal .footer-tag{max-width:20rem;color:rgba(244,241,235,.6);font-size:.9rem}
    body.page-journal .footer-title{margin-bottom:1.25rem;color:rgba(244,241,235,.45);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-journal .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.88rem}
    body.page-journal .footer-col a:hover{color:var(--metal)}
    body.page-journal .footer-bottom{max-width:var(--content-width);margin:2rem auto 0;display:flex;justify-content:space-between;gap:2rem;color:rgba(244,241,235,.45);font-size:.72rem}
    body.page-journal .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .9s var(--ease),transform .9s var(--ease)} body.page-journal .reveal.is-visible{opacity:1;transform:none}
    body.page-journal :focus-visible{outline:1px solid var(--metal);outline-offset:4px}
    @media(max-width:900px){
      body.page-journal .nav{grid-template-columns:auto 1fr auto} body.page-journal .nav-links, body.page-journal .nav-cta{display:none} body.page-journal .menu-toggle{display:block;justify-self:end}
      body.page-journal .mobile-menu{position:fixed;inset:0;z-index:90;background:var(--night);color:var(--canvas);padding:8rem var(--page-gutter) 3rem;flex-direction:column;gap:1.4rem;font-size:clamp(1.8rem,7vw,3.5rem);font-weight:300;letter-spacing:-.03em}
      body.page-journal .mobile-menu.is-open{display:flex}
      body.page-journal .page-hero__inner, body.page-journal .intro-grid, body.page-journal .series-info{grid-template-columns:1fr}
      body.page-journal .page-hero{min-height:78svh} body.page-journal .hero-copy{max-width:36rem}
      body.page-journal .footer-grid{grid-template-columns:1fr 1fr} body.page-journal .footer-brand-col{grid-column:1/-1}
    }
    @media(max-width:600px){
      body.page-journal{--header-height:4.8rem} body.page-journal h1{font-size:clamp(3.8rem,18vw,6rem)}
      body.page-journal .series-media{min-height:85svh} body.page-journal .mechanism{width:92vw;height:52vw}
      body.page-journal .footer-grid{grid-template-columns:1fr} body.page-journal .footer-bottom{flex-direction:column}
    }

    /* Commission page */
    body.page-journal .commission-hero{min-height:78svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,10vw,9rem)}
    body.page-journal .commission-hero__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);gap:clamp(3rem,8vw,8rem);align-items:end}
    body.page-journal .commission-hero h1{margin:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.9;letter-spacing:-.055em}
    body.page-journal .commission-hero p{margin:0;max-width:31rem;color:rgba(244,241,235,.72);font-size:clamp(1.05rem,.5vw + .95rem,1.3rem)}
    body.page-journal .commission-intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-journal .commission-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-journal .commission-intro h2, body.page-journal .journey h2, body.page-journal .materials h2, body.page-journal .timeline h2, body.page-journal .enquiry h2{margin:0;font-size:clamp(3rem,6vw,5.75rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-journal .commission-intro__copy{max-width:38rem;color:var(--ink-muted)}
    body.page-journal .commission-intro__copy p{margin:0 0 1.35rem}
    body.page-journal .journey{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-journal .journey-header{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(4rem,8vw,7rem)}
    body.page-journal .journey-header p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-journal .journey-list{border-top:1px solid var(--line)}
    body.page-journal .journey-step{display:grid;grid-template-columns:5rem minmax(14rem,.6fr) 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;border-bottom:1px solid var(--line);align-items:start}
    body.page-journal .journey-number{font-size:.78rem;letter-spacing:.2em;color:var(--metal)}
    body.page-journal .journey-step h3{margin:0;font-size:clamp(1.7rem,2.5vw,2.5rem);font-weight:400;letter-spacing:-.025em}
    body.page-journal .journey-step p{margin:0;color:var(--ink-muted);max-width:38rem}
    body.page-journal .materials{padding:var(--section-space) 0 0;background:var(--canvas)}
    body.page-journal .materials-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(3rem,6vw,5rem)}
    body.page-journal .materials-head p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-journal .materials-media{min-height:70svh;background:var(--night);position:relative;display:grid;place-items:center;overflow:hidden}
    body.page-journal .materials-placeholder{width:min(74vw,68rem);height:min(36vw,30rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(244,241,235,.14)}
    body.page-journal .material-swatch{background:linear-gradient(145deg,rgba(140,120,85,.25),rgba(244,241,235,.03));position:relative}
    body.page-journal .material-swatch::after{content:attr(data-label);position:absolute;left:1rem;bottom:1rem;color:rgba(244,241,235,.55);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
    body.page-journal .timeline{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-journal .timeline-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1.25fr);gap:clamp(4rem,9vw,10rem)}
    body.page-journal .timeline-list{border-top:1px solid var(--line)}
    body.page-journal .timeline-row{display:grid;grid-template-columns:10rem 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}
    body.page-journal .timeline-row dt{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--metal)}
    body.page-journal .timeline-row dd{margin:0;color:var(--ink-muted)}
    body.page-journal .enquiry{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-journal .enquiry-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(24rem,1.25fr);gap:clamp(4rem,9vw,10rem);align-items:start}
    body.page-journal .enquiry-copy p{max-width:32rem;color:var(--ink-muted)}
    body.page-journal .commission-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.25rem}
    body.page-journal .field{display:flex;flex-direction:column;gap:.55rem}
    body.page-journal .field--full{grid-column:1/-1}
    body.page-journal .field label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
    body.page-journal .field input, body.page-journal .field select, body.page-journal .field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:.85rem 0;font:inherit;border-radius:0;outline:none}
    body.page-journal .field textarea{min-height:9rem;resize:vertical}
    body.page-journal .field input:focus, body.page-journal .field select:focus, body.page-journal .field textarea:focus{border-color:var(--metal)}
    body.page-journal .form-note{grid-column:1/-1;margin:0;color:var(--ink-muted);font-size:.82rem}
    body.page-journal .form-actions{grid-column:1/-1;padding-top:1rem}
    @media(max-width:900px){body.page-journal .commission-hero__grid, body.page-journal .commission-intro__grid, body.page-journal .journey-header, body.page-journal .materials-head, body.page-journal .timeline-grid, body.page-journal .enquiry-grid{grid-template-columns:1fr}body.page-journal .journey-step{grid-template-columns:3rem 1fr}body.page-journal .journey-step p{grid-column:2}body.page-journal .materials-placeholder{width:88vw;height:64vw}body.page-journal .commission-form{grid-template-columns:1fr}body.page-journal .field--full, body.page-journal .form-note, body.page-journal .form-actions{grid-column:auto}}

    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-journal *, body.page-journal *::before, body.page-journal *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-journal .reveal{opacity:1;transform:none}}

    /* Journal article pages */
    body.page-journal .journey-step-link{color:inherit;text-decoration:none;transition:color .3s var(--ease)}
    body.page-journal .journey-step-link:hover h3, body.page-journal .journey-step-link:focus-visible h3{color:var(--metal)}
    body.page-journal .journey-step-link h3{transition:color .3s var(--ease)}
    body.page-journal-article .site-header{background:rgba(14,24,34,.96)}
    body.page-journal-article .journal-article{padding-top:var(--header-height);background:var(--canvas)}
    body.page-journal-article .journal-article-header{padding-top:clamp(6rem,10vw,10rem);padding-bottom:clamp(3.5rem,7vw,6rem)}
    body.page-journal-article .journal-article-kicker{margin:0 0 1.4rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-journal-article .journal-article-header h1{max-width:78rem;color:var(--ink);font-size:clamp(4rem,9vw,8.5rem);line-height:.92}
    body.page-journal-article .journal-article-dek{max-width:46rem;margin:clamp(1.5rem,3vw,2.5rem) 0 0;color:var(--ink-muted);font-family:var(--editorial);font-size:clamp(1.25rem,1.8vw,1.65rem);font-style:italic;font-weight:400;line-height:1.5}
    body.page-journal-article .journal-article-media{position:relative;width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));min-height:clamp(24rem,62vw,55rem);margin-inline:auto;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%);overflow:hidden}
    body.page-journal-article .journal-article-copy{width:min(calc(100% - (2 * var(--page-gutter))),46rem);min-height:clamp(28rem,50vw,46rem);padding-top:clamp(4rem,8vw,7rem);padding-bottom:var(--section-space);font-family:var(--sans);font-size:inherit;line-height:inherit}
    body.page-journal-article .journal-article-copy h2{margin:clamp(3.5rem,7vw,5.5rem) 0 1.5rem;font-size:clamp(1.75rem,3vw,2.6rem);font-weight:400;line-height:1.08;letter-spacing:-.025em}
    body.page-journal-article .journal-article-copy p{margin-bottom:1.35rem}
    @media(max-width:600px){body.page-journal-article .journal-article-header{padding-top:4.5rem}body.page-journal-article .journal-article-media{min-height:60svh}}
  

/* ===== CONTACT ===== */


    body.page-contact{
      --canvas:#F4F1EB; --canvas-secondary:#ECE7DE; --ink:#1B1B1B; --ink-muted:#67625A;
      --night:#0E1822; --metal:#8C7855; --line:rgba(27,27,27,.14); --line-dark:rgba(244,241,235,.16);
      --page-gutter:clamp(1.5rem,4.5vw,5rem); --section-space:clamp(3.5rem,6vw,6rem);
      --content-width:90rem; --copy-width:44rem;
      --sans:"Neue Haas Grotesk Text Pro","Neue Haas Grotesk","Helvetica Neue",Helvetica,Arial,sans-serif;
      --editorial:"GT Sectra Fine",Canela,Georgia,serif;
      --ease:cubic-bezier(.16,1,.3,1); --header-height:5.5rem;
    }
    body.page-contact *, body.page-contact *::before, body.page-contact *::after{box-sizing:border-box}
    html{scroll-behavior:smooth;background:var(--canvas)}
    body.page-contact{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.35vw + .94rem,1.19rem);font-weight:400;line-height:1.58;-webkit-font-smoothing:antialiased}
    body.page-contact.menu-open{overflow:hidden} body.page-contact a{color:inherit;text-decoration:none} body.page-contact svg{display:block;max-width:100%}
    body.page-contact button{font:inherit} body.page-contact .shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--content-width));margin-inline:auto}
    body.page-contact .skip-link{position:fixed;left:1rem;top:1rem;z-index:1000;padding:.75rem 1rem;background:var(--canvas);color:var(--ink);transform:translateY(-160%)}
    body.page-contact .skip-link:focus{transform:none}
    body.page-contact .site-header{position:fixed;inset:0 0 auto;z-index:100;color:var(--canvas);background:transparent;transition:background .45s var(--ease),color .45s var(--ease)}
    body.page-contact .site-header.is-scrolled{background:rgba(14,24,34,.96)}
    body.page-contact .nav{min-height:var(--header-height);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem}
    body.page-contact .logo{width:clamp(7.6rem,10vw,10rem);color:currentColor} body.page-contact .logo svg{width:100%} body.page-contact .logo path{fill:currentColor!important}
    body.page-contact .nav-links{display:flex;align-items:center;justify-content:center;gap:clamp(1.4rem,2.4vw,2.8rem)}
    body.page-contact .nav-link, body.page-contact .nav-cta, body.page-contact .menu-toggle{font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-contact .nav-link, body.page-contact .nav-cta{position:relative;padding:.7rem 0}
    body.page-contact .nav-link::after, body.page-contact .nav-cta::after{content:"";position:absolute;left:0;right:.20em;bottom:.42rem;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}
    body.page-contact .nav-link:hover::after, body.page-contact .nav-link:focus-visible::after, body.page-contact .nav-cta:hover::after, body.page-contact .nav-cta:focus-visible::after{transform:scaleX(1);transform-origin:left}
    body.page-contact .menu-toggle{display:none;border:0;background:none;color:inherit;padding:.7rem 0;cursor:pointer}
    body.page-contact .mobile-menu{display:none}
    body.page-contact .page-hero{min-height:70svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,9vw,8rem)}
    body.page-contact .page-hero__inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(18rem,.6fr);gap:clamp(3rem,8vw,9rem);align-items:end}
    body.page-contact .eyebrow{margin:0 0 1.2rem;color:var(--metal);font-size:.72rem;font-weight:500;letter-spacing:.20em;text-transform:uppercase}
    body.page-contact h1, body.page-contact h2, body.page-contact h3, body.page-contact p{margin-top:0} body.page-contact h1{margin-bottom:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.91;letter-spacing:-.055em}
    body.page-contact .hero-copy{margin:0;color:rgba(244,241,235,.72);max-width:30rem;font-size:clamp(1.05rem,1.35vw,1.3rem)}
    body.page-contact .intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-contact .intro-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.65fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-contact h2{margin-bottom:0;font-size:clamp(3rem,6vw,5.8rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-contact .intro-copy{max-width:32rem;color:var(--ink-muted)} body.page-contact .intro-copy p{margin-bottom:1.6rem}
    body.page-contact .editorial{font-family:var(--editorial);font-style:italic;font-weight:400}
    body.page-contact .text-link{display:inline-flex;align-items:center;gap:.65rem;font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
    body.page-contact .text-link::after{content:"↗";color:var(--metal);transition:transform .3s var(--ease)} body.page-contact .text-link:hover::after{transform:translate(.2rem,-.2rem)}
    body.page-contact .series{padding:0 0 var(--section-space);background:var(--canvas)}
    body.page-contact .series-media{position:relative;min-height:min(78vw,58rem);background:var(--night);overflow:hidden}
    body.page-contact .series-placeholder{position:absolute;inset:0;background:radial-gradient(circle at 50% 43%,rgba(140,120,85,.16),transparent 28%),linear-gradient(145deg,#152534 0%,var(--night) 58%,#091018 100%)}
    body.page-contact .mechanism{position:absolute;left:50%;top:50%;width:min(72vw,58rem);height:min(40vw,31rem);transform:translate(-50%,-46%)}
    body.page-contact .rail{position:absolute;left:5%;right:5%;bottom:15%;height:2px;background:rgba(244,241,235,.24)}
    body.page-contact .base{position:absolute;left:15%;right:15%;bottom:7%;height:4%;border:1px solid rgba(140,120,85,.65)}
    body.page-contact .wheel{position:absolute;top:12%;width:34%;aspect-ratio:1;border:1px solid rgba(140,120,85,.7);border-radius:50%}
    body.page-contact .wheel::before, body.page-contact .wheel::after{content:"";position:absolute;inset:17%;border:1px solid rgba(244,241,235,.22);border-radius:50%}
    body.page-contact .wheel::after{inset:45%;background:var(--metal);border:0}
    body.page-contact .wheel--left{left:9%} body.page-contact .wheel--right{right:9%}
    body.page-contact .chain{position:absolute;left:26%;right:26%;top:47%;height:1px;border-top:1px dashed rgba(140,120,85,.75)}
    body.page-contact .media-label{position:absolute;left:var(--page-gutter);bottom:var(--page-gutter);color:rgba(244,241,235,.54);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-contact .series-info{padding-top:clamp(2.5rem,5vw,4.5rem);display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(3rem,8vw,9rem)}
    body.page-contact .series-title{font-size:clamp(3rem,5vw,5.3rem);font-weight:300;line-height:1;letter-spacing:-.04em;margin-bottom:1.25rem}
    body.page-contact .series-description{max-width:38rem;color:var(--ink-muted)}
    body.page-contact .series-meta{display:grid;align-content:start;gap:0;border-top:1px solid var(--line)}
    body.page-contact .meta-row{display:flex;justify-content:space-between;gap:2rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.78rem}
    body.page-contact .meta-row dt{color:var(--ink-muted);letter-spacing:.12em;text-transform:uppercase} body.page-contact .meta-row dd{margin:0;text-align:right}
    body.page-contact .invitation{padding:var(--section-space) 0;background:var(--canvas-secondary);text-align:center}
    body.page-contact .invitation h2{max-width:58rem;margin:0 auto 2rem}
    body.page-contact .button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.9rem 1.5rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;transition:background .3s,color .3s,border-color .3s}
    body.page-contact .button:hover, body.page-contact .button:focus-visible{background:var(--ink);color:var(--canvas)}
    body.page-contact .site-footer{background:var(--night);color:var(--canvas);padding:clamp(5rem,9vw,8rem) var(--page-gutter) 2rem}
    body.page-contact .footer-grid{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:clamp(2.5rem,6vw,6rem);padding-bottom:clamp(4rem,7vw,6rem);border-bottom:1px solid var(--line-dark)}
    body.page-contact .footer-logo{display:block;width:95px;max-width:95px;margin:0 0 1.25rem;color:var(--canvas)} body.page-contact .footer-logo svg{width:100%} body.page-contact .footer-logo path{fill:currentColor!important}
    body.page-contact .footer-tag{max-width:20rem;color:rgba(244,241,235,.6);font-size:.9rem}
    body.page-contact .footer-title{margin-bottom:1.25rem;color:rgba(244,241,235,.45);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase}
    body.page-contact .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.88rem}
    body.page-contact .footer-col a:hover{color:var(--metal)}
    body.page-contact .footer-bottom{max-width:var(--content-width);margin:2rem auto 0;display:flex;justify-content:space-between;gap:2rem;color:rgba(244,241,235,.45);font-size:.72rem}
    body.page-contact .reveal{opacity:0;transform:translateY(1.5rem);transition:opacity .9s var(--ease),transform .9s var(--ease)} body.page-contact .reveal.is-visible{opacity:1;transform:none}
    body.page-contact :focus-visible{outline:1px solid var(--metal);outline-offset:4px}
    @media(max-width:900px){
      body.page-contact .nav{grid-template-columns:auto 1fr auto} body.page-contact .nav-links, body.page-contact .nav-cta{display:none} body.page-contact .menu-toggle{display:block;justify-self:end}
      body.page-contact .mobile-menu{position:fixed;inset:0;z-index:90;background:var(--night);color:var(--canvas);padding:8rem var(--page-gutter) 3rem;flex-direction:column;gap:1.4rem;font-size:clamp(1.8rem,7vw,3.5rem);font-weight:300;letter-spacing:-.03em}
      body.page-contact .mobile-menu.is-open{display:flex}
      body.page-contact .page-hero__inner, body.page-contact .intro-grid, body.page-contact .series-info{grid-template-columns:1fr}
      body.page-contact .page-hero{min-height:78svh} body.page-contact .hero-copy{max-width:36rem}
      body.page-contact .footer-grid{grid-template-columns:1fr 1fr} body.page-contact .footer-brand-col{grid-column:1/-1}
    }
    @media(max-width:600px){
      body.page-contact{--header-height:4.8rem} body.page-contact h1{font-size:clamp(3.8rem,18vw,6rem)}
      body.page-contact .series-media{min-height:85svh} body.page-contact .mechanism{width:92vw;height:52vw}
      body.page-contact .footer-grid{grid-template-columns:1fr} body.page-contact .footer-bottom{flex-direction:column}
    }

    /* Commission page */
    body.page-contact .commission-hero{min-height:78svh;background:var(--night);color:var(--canvas);display:flex;align-items:flex-end;padding:calc(var(--header-height) + 5rem) 0 clamp(5rem,10vw,9rem)}
    body.page-contact .commission-hero__grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);gap:clamp(3rem,8vw,8rem);align-items:end}
    body.page-contact .commission-hero h1{margin:0;font-size:clamp(4.5rem,10vw,9rem);font-weight:300;line-height:.9;letter-spacing:-.055em}
    body.page-contact .commission-hero p{margin:0;max-width:31rem;color:rgba(244,241,235,.72);font-size:clamp(1.05rem,.5vw + .95rem,1.3rem)}
    body.page-contact .commission-intro{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-contact .commission-intro__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(20rem,.8fr);gap:clamp(3rem,8vw,9rem);align-items:start}
    body.page-contact .commission-intro h2, body.page-contact .journey h2, body.page-contact .materials h2, body.page-contact .timeline h2, body.page-contact .enquiry h2{margin:0;font-size:clamp(3rem,6vw,5.75rem);font-weight:300;line-height:1;letter-spacing:-.045em}
    body.page-contact .commission-intro__copy{max-width:38rem;color:var(--ink-muted)}
    body.page-contact .commission-intro__copy p{margin:0 0 1.35rem}
    body.page-contact .journey{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-contact .journey-header{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(4rem,8vw,7rem)}
    body.page-contact .journey-header p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-contact .journey-list{border-top:1px solid var(--line)}
    body.page-contact .journey-step{display:grid;grid-template-columns:5rem minmax(14rem,.6fr) 1fr;gap:clamp(1.5rem,4vw,4rem);padding:clamp(2rem,4vw,3.5rem) 0;border-bottom:1px solid var(--line);align-items:start}
    body.page-contact .journey-number{font-size:.78rem;letter-spacing:.2em;color:var(--metal)}
    body.page-contact .journey-step h3{margin:0;font-size:clamp(1.7rem,2.5vw,2.5rem);font-weight:400;letter-spacing:-.025em}
    body.page-contact .journey-step p{margin:0;color:var(--ink-muted);max-width:38rem}
    body.page-contact .materials{padding:var(--section-space) 0 0;background:var(--canvas)}
    body.page-contact .materials-head{display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,8vw,8rem);margin-bottom:clamp(3rem,6vw,5rem)}
    body.page-contact .materials-head p{margin:0;color:var(--ink-muted);max-width:36rem}
    body.page-contact .materials-media{min-height:70svh;background:var(--night);position:relative;display:grid;place-items:center;overflow:hidden}
    body.page-contact .materials-placeholder{width:min(74vw,68rem);height:min(36vw,30rem);display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(244,241,235,.14)}
    body.page-contact .material-swatch{background:linear-gradient(145deg,rgba(140,120,85,.25),rgba(244,241,235,.03));position:relative}
    body.page-contact .material-swatch::after{content:attr(data-label);position:absolute;left:1rem;bottom:1rem;color:rgba(244,241,235,.55);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
    body.page-contact .timeline{padding:var(--section-space) 0;background:var(--canvas-secondary)}
    body.page-contact .timeline-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(22rem,1.25fr);gap:clamp(4rem,9vw,10rem)}
    body.page-contact .timeline-list{border-top:1px solid var(--line)}
    body.page-contact .timeline-row{display:grid;grid-template-columns:10rem 1fr;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--line)}
    body.page-contact .timeline-row dt{font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--metal)}
    body.page-contact .timeline-row dd{margin:0;color:var(--ink-muted)}
    body.page-contact .enquiry{padding:var(--section-space) 0;background:var(--canvas)}
    body.page-contact .enquiry-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(24rem,1.25fr);gap:clamp(4rem,9vw,10rem);align-items:start}
    body.page-contact .enquiry-copy p{max-width:32rem;color:var(--ink-muted)}
    body.page-contact .commission-form{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.25rem}
    body.page-contact .field{display:flex;flex-direction:column;gap:.55rem}
    body.page-contact .field--full{grid-column:1/-1}
    body.page-contact .field label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}
    body.page-contact .field input, body.page-contact .field select, body.page-contact .field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:.85rem 0;font:inherit;border-radius:0;outline:none}
    body.page-contact .field textarea{min-height:9rem;resize:vertical}
    body.page-contact .field input:focus, body.page-contact .field select:focus, body.page-contact .field textarea:focus{border-color:var(--metal)}
    body.page-contact .form-note{grid-column:1/-1;margin:0;color:var(--ink-muted);font-size:.82rem}
    body.page-contact .form-actions{grid-column:1/-1;padding-top:1rem}
    @media(max-width:900px){body.page-contact .commission-hero__grid, body.page-contact .commission-intro__grid, body.page-contact .journey-header, body.page-contact .materials-head, body.page-contact .timeline-grid, body.page-contact .enquiry-grid{grid-template-columns:1fr}body.page-contact .journey-step{grid-template-columns:3rem 1fr}body.page-contact .journey-step p{grid-column:2}body.page-contact .materials-placeholder{width:88vw;height:64vw}body.page-contact .commission-form{grid-template-columns:1fr}body.page-contact .field--full, body.page-contact .form-note, body.page-contact .form-actions{grid-column:auto}}

    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.page-contact *, body.page-contact *::before, body.page-contact *::after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-contact .reveal{opacity:1;transform:none}}
  

[data-site-header],[data-site-footer]{display:contents}

/* Canonical footer: shared by every page and matched to the approved interior-page footer. */
body[class*="page-"] .site-footer {
  background: var(--night);
  color: var(--canvas);
  font-size: clamp(1rem, .35vw + .94rem, 1.19rem);
  line-height: 1.58;
  padding: clamp(5rem, 9vw, 8rem) var(--page-gutter) 2rem;
}

body[class*="page-"] .footer-grid {
  max-width: var(--content-width);
  margin: auto;
  display: grid;
  grid-template-columns: 2fr repeat(3, 1fr);
  gap: clamp(2.5rem, 6vw, 6rem);
  padding-bottom: clamp(4rem, 7vw, 6rem);
  border-bottom: 1px solid var(--line-dark);
}

body[class*="page-"] .footer-logo {
  display: block;
  width: 95px;
  max-width: 95px;
  margin: 0 0 1.25rem;
  color: var(--canvas);
}

body[class*="page-"] .footer-logo svg { width: 100%; }
body[class*="page-"] .footer-logo path { fill: currentColor !important; }

body[class*="page-"] .footer-tag {
  max-width: 20rem;
  margin: 0 0 .9rem;
  color: rgba(244, 241, 235, .6);
  font-size: .9rem;
}

body[class*="page-"] .footer-title {
  margin-bottom: 1.25rem;
  color: rgba(244, 241, 235, .45);
  font-size: .68rem;
  font-weight: 400;
  letter-spacing: .18em;
  text-transform: uppercase;
}

body[class*="page-"] .footer-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .8rem;
  font-size: .88rem;
}

body[class*="page-"] .footer-col a {
  color: var(--canvas);
  font-size: .88rem;
  transition: color .25s ease;
}

body[class*="page-"] .footer-col a:hover { color: var(--metal); }

body[class*="page-"] .footer-bottom {
  width: 100%;
  max-width: var(--content-width);
  margin: 2rem auto 0;
  display: flex;
  justify-content: space-between;
  gap: 2rem;
  color: rgba(244, 241, 235, .45);
  font-size: .72rem;
  letter-spacing: normal;
}


/* =========================================================
   POLLIONI SHARED MOBILE OPTIMIZATION
   Applies to every page while preserving desktop layouts.
   ========================================================= */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body[class*="page-"] {
  min-width: 320px;
  overflow-x: hidden;
}

body[class*="page-"] img,
body[class*="page-"] video,
body[class*="page-"] svg {
  max-width: 100%;
}

body[class*="page-"] button,
body[class*="page-"] input,
body[class*="page-"] select,
body[class*="page-"] textarea {
  font: inherit;
}

body[class*="page-"] a,
body[class*="page-"] button {
  -webkit-tap-highlight-color: transparent;
}

@media (max-width: 900px) {
  body[class*="page-"] {
    --page-gutter: clamp(1.125rem, 4.8vw, 1.75rem);
    --section-space: clamp(4rem, 13vw, 6.5rem);
    --header-height: 4.75rem;
  }

  body[class*="page-"] .shell {
    width: min(100% - (var(--page-gutter) * 2), var(--content-width));
  }

  body[class*="page-"] .site-header {
    height: var(--header-height);
  }

  body[class*="page-"] .nav {
    min-height: var(--header-height);
    padding-top: max(.7rem, env(safe-area-inset-top));
    padding-bottom: .7rem;
  }

  body[class*="page-"] .logo {
    width: clamp(6.4rem, 28vw, 8rem);
    min-width: 0;
  }

  body[class*="page-"] .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 3rem;
    min-height: 3rem;
    padding: .65rem .2rem .65rem .75rem;
    font-size: .72rem;
    letter-spacing: .16em;
    cursor: pointer;
  }

  body[class*="page-"] .mobile-menu {
    padding:
      calc(var(--header-height) + max(2rem, env(safe-area-inset-top)))
      var(--page-gutter)
      max(2.5rem, env(safe-area-inset-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  body[class*="page-"] .mobile-menu a {
    display: flex;
    align-items: center;
    min-height: 3.5rem;
    padding: .25rem 0;
    line-height: 1.05;
  }

  body.menu-open {
    overflow: hidden;
    touch-action: none;
  }

  /* Canonical interior-page hero */
  body:not(.page-home) .commission-hero {
    min-height: 62svh;
    padding:
      calc(var(--header-height) + clamp(3rem, 12vw, 5rem))
      0
      clamp(3.5rem, 12vw, 5.5rem);
  }

  body:not(.page-home) .commission-hero__grid {
    grid-template-columns: 1fr !important;
    gap: clamp(1.75rem, 7vw, 3rem) !important;
    align-items: end;
  }

  body:not(.page-home) .commission-hero h1 {
    font-size: clamp(3.6rem, 16.5vw, 6.2rem);
    line-height: .92;
    overflow-wrap: normal;
    white-space: nowrap;
  }

  body:not(.page-home) .commission-hero p {
    max-width: 31rem;
    font-size: clamp(1rem, 4.5vw, 1.2rem);
    line-height: 1.55;
  }

  /* Shared section grids */
  body[class*="page-"] .commission-intro__grid,
  body[class*="page-"] .journey-header,
  body[class*="page-"] .materials-head,
  body[class*="page-"] .timeline-grid,
  body[class*="page-"] .enquiry-grid,
  body[class*="page-"] .series-info,
  body[class*="page-"] .intro-grid,
  body[class*="page-"] .page-hero__inner {
    grid-template-columns: 1fr !important;
    gap: clamp(2rem, 8vw, 3.75rem) !important;
  }

  body[class*="page-"] .commission-intro h2,
  body[class*="page-"] .journey h2,
  body[class*="page-"] .materials h2,
  body[class*="page-"] .timeline h2,
  body[class*="page-"] .enquiry h2,
  body[class*="page-"] .invitation h2 {
    font-size: clamp(2.5rem, 12vw, 4.4rem);
    line-height: 1.02;
  }

  body[class*="page-"] .commission-intro__copy,
  body[class*="page-"] .journey-header p,
  body[class*="page-"] .materials-head p,
  body[class*="page-"] .enquiry-copy p {
    max-width: 38rem;
  }

  /* Lists and technical information */
  body[class*="page-"] .journey-step {
    grid-template-columns: 2.25rem 1fr !important;
    gap: 1.25rem !important;
    padding: 2rem 0;
  }

  body[class*="page-"] .journey-step p {
    grid-column: 2 !important;
  }

  body[class*="page-"] .timeline-row {
    grid-template-columns: 1fr !important;
    gap: .65rem !important;
    padding: 1.4rem 0;
  }

  body[class*="page-"] .timeline-row dd {
    max-width: 38rem;
  }

  body[class*="page-"] .meta-row {
    align-items: flex-start;
    gap: 1rem;
  }

  /* Media components */
  body[class*="page-"] .materials-media {
    min-height: 56svh;
  }

  body[class*="page-"] .materials-placeholder {
    width: calc(100vw - (var(--page-gutter) * 2));
    height: min(72vw, 26rem);
  }

  body[class*="page-"] .series-media {
    min-height: 68svh;
  }

  body[class*="page-"] .media-label {
    left: var(--page-gutter);
    right: var(--page-gutter);
    bottom: max(1.25rem, env(safe-area-inset-bottom));
    line-height: 1.4;
  }

  /* Buttons and links */
  body[class*="page-"] .button,
  body[class*="page-"] .nav-cta {
    min-height: 3.25rem;
  }

  body[class*="page-"] .invitation .button {
    width: min(100%, 28rem);
  }

  /* Forms */
  body[class*="page-"] input,
  body[class*="page-"] select,
  body[class*="page-"] textarea {
    min-height: 3.5rem;
    font-size: 1rem !important;
  }

  body[class*="page-"] textarea {
    min-height: 9rem;
  }

  body[class*="page-"] .commission-form {
    grid-template-columns: 1fr !important;
    gap: 1.35rem !important;
  }

  body[class*="page-"] .field--full,
  body[class*="page-"] .form-note,
  body[class*="page-"] .form-actions {
    grid-column: auto !important;
  }

  body[class*="page-"] form.enquiry-form {
    width: 100%;
  }

  body[class*="page-"] form.enquiry-form input,
  body[class*="page-"] form.enquiry-form button {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* Footer */
  body[class*="page-"] .site-footer {
    padding:
      clamp(4rem, 14vw, 6rem)
      var(--page-gutter)
      max(1.75rem, env(safe-area-inset-bottom));
  }

  body[class*="page-"] .footer-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 2.75rem 2rem;
  }

  body[class*="page-"] .footer-brand-col {
    grid-column: 1 / -1;
  }

  body[class*="page-"] .footer-col a {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
  }

  body[class*="page-"] .footer-bottom {
    align-items: flex-start;
    line-height: 1.5;
  }
}

@media (max-width: 560px) {
  body[class*="page-"] {
    --page-gutter: 1.125rem;
    --section-space: 4.25rem;
  }

  body[class*="page-"] .mobile-menu {
    font-size: clamp(2rem, 11vw, 3.25rem);
  }

  body:not(.page-home) .commission-hero {
    min-height: 58svh;
  }

  body[class*="page-"] .journey-step {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
  }

  body[class*="page-"] .journey-step p {
    grid-column: 1 !important;
  }

  body[class*="page-"] .materials-placeholder {
    grid-template-columns: 1fr;
    height: 66svh;
  }

  body[class*="page-"] .footer-grid {
    grid-template-columns: 1fr !important;
  }

  body[class*="page-"] .footer-bottom {
    flex-direction: column;
    gap: 1rem;
  }

  /* Contact subscription fields stack only on very small screens. */
  body.page-contact .subscription-fields {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
}

@media (max-width: 380px) {
  body[class*="page-"] .commission-hero h1 {
    font-size: clamp(3.15rem, 17vw, 4.2rem);
  }

  body[class*="page-"] .logo {
    width: 6rem;
  }
}
