/* Nicole's own colours, images and typography; compositions from the supplied references. */
:root { --editorial-paper:#fbf9ee; --editorial-panel:#fffef8; --editorial-ink:#38432e; --editorial-muted:#686c5b; --editorial-line:rgba(56,67,46,.19); }
.home-editorial { background:var(--editorial-paper); color:var(--editorial-ink); padding:80px max(32px,calc((100vw - 1200px)/2)); }
.editorial-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-bottom:24px; margin-bottom:40px; border-bottom:1px solid var(--editorial-line); }
.editorial-kicker,.editorial-index { font:500 11px/1.5 var(--font-sans); letter-spacing:.15em; text-transform:uppercase; margin:0; }
.editorial-index { color:var(--editorial-muted); white-space:nowrap; }
.home-editorial h2 { font:400 clamp(38px,4vw,58px)/1.02 var(--font-serif); letter-spacing:-.035em; margin:20px 0 26px; color:var(--editorial-ink); }
.home-editorial p:not(.editorial-kicker) { font:400 14px/1.95 var(--font-sans); color:var(--editorial-muted); margin:0 0 30px; }
.editorial-button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-height:48px; padding:15px 24px; background:var(--editorial-ink); color:#fffdf4; border:1px solid var(--editorial-ink); font:500 12px/1.5 var(--font-sans); text-decoration:none; transition:background .2s,color .2s; }
.editorial-button:hover { background:#566343; color:white; }
.editorial-button:focus-visible,.editorial-text-link:focus-visible,.home-faq a:focus-visible { outline:2px solid #83521a; outline-offset:5px; }
.editorial-text-link { display:inline-block; font:500 12px/1.6 var(--font-sans); color:var(--editorial-ink); text-decoration:none; border-bottom:1px solid var(--editorial-line); padding:4px 0; }
.feature-composition { display:grid; grid-template-columns:repeat(20,minmax(0,1fr)); align-items:center; }
.feature-art { grid-area:1/1/2/12; margin:0; padding:24px 16% 22px 24px; background:#e8e6d7; }
.feature-art a { display:block; }
.feature-art img { width:100%; height:auto; display:block; max-height:605px; object-fit:contain; }
.feature-art figcaption { display:flex; flex-wrap:wrap; gap:5px 18px; justify-content:space-between; font:400 11px/1.5 var(--font-sans); margin-top:20px; color:#555e48; }
.feature-copy { grid-area:1/10/2/21; z-index:1; padding:clamp(38px,5vw,72px); background:var(--editorial-panel); }
.feature-copy h2 { max-width:480px; }
.home-art-marquee { background:#f2edce; padding:72px 0 36px; --art-strip-stage:clamp(250px,26vw,365px); --art-strip-gap:clamp(28px,4vw,58px); }
.home-art-marquee__header { margin-bottom:20px; }
.home-art-marquee__header h2 { font-family:var(--font-serif); color:var(--editorial-ink); font-size:clamp(38px,4vw,58px); line-height:1.1; margin:16px 0 18px; }
.home-art-marquee__header .editorial-kicker { color:var(--editorial-muted); }

/* A coleção responde ao rato com um traço leve nas cores da marca. */
.home-art-marquee__header .editorial-text-link {
    position:relative;
    transition:color .24s ease, transform .24s ease;
}
.home-art-marquee__header .editorial-text-link::after {
    content:'';
    position:absolute;
    inset:auto 0 -1px;
    height:2px;
    background:linear-gradient(90deg, transparent, var(--earth) 15%, var(--gold) 85%, transparent);
    opacity:0;
    transform:scaleX(.15);
    transform-origin:left;
    pointer-events:none;
    transition:transform .3s cubic-bezier(.22,.61,.36,1), opacity .2s ease;
}
.home-art-marquee__header .editorial-text-link:focus-visible {
    color:var(--earth);
    transform:translateY(-2px);
}
.home-art-marquee__header .editorial-text-link:focus-visible::after {
    opacity:1;
    transform:scaleX(1);
}
@media (hover:hover) and (pointer:fine) {
    .home-art-marquee__header .editorial-text-link:hover {
        color:var(--earth);
        transform:translateY(-2px);
    }
    .home-art-marquee__header .editorial-text-link:hover::after {
        opacity:1;
        transform:scaleX(1);
    }
}
@media (prefers-reduced-motion:reduce) {
    .home-art-marquee__header .editorial-text-link,
    .home-art-marquee__header .editorial-text-link::after { transition:none; }
    .home-art-marquee__header .editorial-text-link:is(:hover,:focus-visible) { transform:none; }
}
.home-diptych { padding-top:80px; padding-bottom:88px; }
.diptych-grid { display:grid; grid-template-columns:1fr 1fr; }
.diptych-image { margin:0; min-width:0; padding:0; aspect-ratio:1; position:relative; overflow:hidden; background:#e7e7dd; }
.diptych-image img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block; transform:scale(1.12); }
.diptych-painting img { transform:scale(1.2); }
.diptych-copy { padding:clamp(32px,5vw,72px); display:flex; flex-direction:column; justify-content:center; align-items:flex-start; background:var(--editorial-panel); }
.diptych-copy h2 { max-width:450px; }
.diptych-commission { background:#f1eedf; }
.diptych-commission .editorial-text-link { margin-top:21px; }
.home-faq { padding-top:62px; padding-bottom:100px; background:#f2f0e5; }
.home-faq > h2 { text-align:center; margin:50px 0 40px; }
.faq-list { max-width:760px; margin:auto; border-top:1px solid var(--editorial-line); }
.faq-list details { border-bottom:1px solid var(--editorial-line); }
.faq-list summary { list-style:none; position:relative; padding:23px 38px 23px 0; font:400 14px/1.7 var(--font-sans); cursor:pointer; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:4px; top:18px; font:400 24px/1.3 var(--font-serif); }
.faq-list details[open] summary::after { content:'−'; }
.faq-list summary:focus-visible { outline:2px solid #83521a; outline-offset:4px; }
.home-faq details p { font-size:13px; margin:0 34px 12px 0; }
.home-faq details a { display:inline-block; color:var(--editorial-ink); font:500 12px/1.6 var(--font-sans); margin-bottom:22px; }
.hero { --hero-header-space:76px; margin-top:0; min-height:calc(100svh + 24px); }
.hero-heading { top:calc(42% + var(--hero-header-space) * .58); }
/* A diffused blue shade gives the lettering contrast while the painting stays bright. */
.hero-heading::before {
    background:radial-gradient(ellipse at center,rgba(5,34,57,.34) 0%,rgba(5,34,57,.15) 46%,transparent 76%);
    opacity:.9;
}
.hero-heading-kicker { margin:0 0 clamp(28px,2.2vw,40px); transform:none; font:400 clamp(26px,3.1vw,40px)/1.15 var(--font-serif); letter-spacing:0; text-transform:none; }
.hero-heading-signature { transform:none; }
@media(min-width:1600px) { .home-editorial { padding-left:max(48px,calc((100vw - 1320px)/2)); padding-right:max(48px,calc((100vw - 1320px)/2)); } }
@media(max-width:1024px) {
 .home-editorial { padding:60px 32px; }
 .feature-copy { padding:40px; }
 .feature-art { padding-left:16px; padding-right:17%; }
 .diptych-copy { padding:36px; }
 .hero { --hero-header-space:76px; margin-top:0; min-height:calc(100svh + 24px); }
}
@media(max-width:700px) {
 .home-editorial { padding:44px 22px; }
 .editorial-heading { padding-bottom:18px; margin-bottom:26px; gap:14px; }
 .editorial-kicker,.editorial-index { font-size:9px; letter-spacing:.12em; }
 .home-editorial h2 { font-size:40px; margin:17px 0 20px; }
 .home-editorial p:not(.editorial-kicker) { font-size:13px; line-height:1.85; margin-bottom:25px; }
 .feature-composition { display:flex; flex-direction:column; }
 .feature-art { width:100%; padding:22px 26px 50px; }
 .feature-art img { max-height:450px; }
 .feature-art figcaption { font-size:9px; gap:7px; }
 .feature-copy { width:calc(100% - 16px); padding:30px 24px; margin-top:-22px; align-self:flex-end; }
 .editorial-button { padding:13px 20px; font-size:11px; gap:22px; }
 .home-art-marquee { padding:50px 0 14px; --art-strip-stage:240px; }
 .home-art-marquee__header { width:calc(100% - 44px); }
 .home-art-marquee__header h2 { font-size:38px; }
 .diptych-grid { grid-template-columns:1fr; }
 .diptych-copy { padding:32px 26px; }
 .diptych-work { grid-row:3; }
 .diptych-commission { grid-row:4; }
 .home-faq > h2 { margin:34px 0 30px; }
 .faq-list summary { font-size:12px; padding-top:19px; padding-bottom:19px; }
 .home-faq details p { font-size:12px; }
 .hero { --hero-header-space:68px; margin-top:0; min-height:calc(100svh + 24px); padding-bottom:64px; }
 .hero-heading { top:calc(42% + var(--hero-header-space) * .58); }
 .hero-heading-kicker { font-size:28px; }
 .hero-heading-signature { font-size:clamp(112px,28vw,170px); }
 .bottom-section { gap:14px; }
 .bottom-text { max-width:145px; font-size:10px; }
 .contact-cards { gap:18px; }
}
@media(prefers-reduced-motion:reduce) { .editorial-button { transition:none; } }

@media (min-width:701px) and (max-width:900px) { .hero { --hero-header-space:68px; margin-top:0; min-height:calc(100svh + 24px); } }

/* Clear glass over the opening painting, with light controls for contrast. */
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) {
    color:#fff9e8;
    background:transparent;
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    border-bottom-color:rgba(255,249,232,.16);
    box-shadow:none;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing)
    :is(.nav-link,.navigation-artist-name,.catalog-search-toggle,.language-switch,.nav-toggle) {
    color:#fff9e8!important;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .navigation-autograph {
    filter:brightness(0) invert(1);
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .nav-link::after {
    background:#fff9e8;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .language-switch button {
    opacity:.8;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .language-switch button[aria-pressed=true] {
    opacity:1;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) :focus-visible {
    outline-color:#fff9e8!important;
}

/* A light quote button echoes the painting's cream accents above the blue. */
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .nav-cta {
    --quote-shimmer-edge:rgba(206,168,64,.38);
    background:#fff9e8;
    color:#124c5b;
    border-color:#fff9e8;
    border-radius:999px;
}
.site-header.is-hero-nav:not(.is-solid):not(.is-open):not(.is-menu-closing) .nav-cta:is(:hover,:focus-visible) {
    background:#fff;
    color:#0b3845;
    border-color:#fff;
    box-shadow:none;
}
