/* DOSSIÊ — galeria de arte | Identidade: café, chocolate, taupe e creme */
:root{--ink:#291b10;--coffee:#4e2d19;--roast:#6c4a37;--camel:#a98c75;--taupe:#b1a397;--beige:#d9d3cd;--paper:#fbf8f5;--cream:#f5f0e9;--linen:#eee5dc;--border:#e9ded4;--quiet:#827569;--shadow:0 18px 46px rgba(58,37,24,.08);--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:18px}
body{margin:0;font-family:var(--sans);font-size:14px;color:var(--ink);background:#f0ebe5;-webkit-font-smoothing:antialiased}
body.lock-scroll{overflow:hidden}
button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #a88b70;outline-offset:3px}
button{border:0}.svg-symbols{position:absolute;width:0;height:0;overflow:hidden}.icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.page-wrap{max-width:1500px;margin:0 auto;padding:13px 15px 0}.rounded-panel{border-radius:25px;overflow:hidden}.eyebrow{margin:0;display:flex;align-items:center;gap:9px;font-size:10px;line-height:1.4;letter-spacing:.19em;font-weight:700;color:var(--roast)}.tiny-star{font-size:14px;color:var(--roast);letter-spacing:0}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:400;letter-spacing:-.065em}h1 em,h2 em{font-family:var(--serif);font-weight:400;color:var(--roast);font-style:italic;letter-spacing:-.06em}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 20px;min-height:47px;border-radius:9px;border:0;font-size:12px;font-weight:700;white-space:nowrap;transition:background .2s,transform .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--coffee);color:#fff9f2}.button-dark:hover{background:var(--ink)}.button-header{background:#e8d5c0;color:var(--coffee);border-radius:999px;min-height:40px;font-size:11px}.button-header:hover{background:#d6b99d}.subtle-link{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:15px;padding:10px 0}.subtle-link span{transition:transform .2s}.subtle-link:hover span{transform:translate(2px,-2px)}
/* Header and asymmetric hero */
.hero{position:relative;min-height:730px;background:var(--paper);isolation:isolate;box-shadow:var(--shadow)}
.header{position:relative;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:22px;height:86px;padding:0 54px}
.brand{display:inline-flex;gap:8px;align-items:center;font-size:19px;font-weight:700;letter-spacing:-.045em;white-space:nowrap;line-height:1}
.brand-glyph{color:var(--coffee);font-size:27px;font-weight:400;line-height:1;transform:rotate(15deg)}.brand-period{color:var(--camel)}.nav{display:flex;align-items:center;gap:clamp(16px,2.6vw,37px);margin-left:auto}.nav a{font-size:11px;color:#594d43;transition:color .2s}.nav a:hover{color:var(--roast)}.mobile-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;background:#eee1d5;border-radius:12px;color:var(--ink)}
.hero-visual{position:absolute;z-index:-3;inset:0 0 0 38%;background-color:#fff;background-image:url('assets/obra-04.webp');background-size:cover;background-repeat:no-repeat;background-position:center center}
.hero-gradient{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 28%,rgba(251,248,245,.97) 36%,rgba(251,248,245,.86) 43%,rgba(251,248,245,.10) 63%,rgba(52,30,20,.08) 100%),linear-gradient(0deg,rgba(43,29,18,.38),transparent 22%,transparent 76%,rgba(251,248,245,.13))}
.hero-copy{position:relative;z-index:2;width:53%;padding:86px 0 0 67px}.hero-copy h1{font-family:var(--serif);font-size:clamp(51px,4.3vw,77px);line-height:1.12;max-width:630px;margin:21px 0 21px}.hero-copy h1 em{color:var(--roast)}.hero-lead{max-width:315px;font-size:13px;line-height:1.85;color:#776d63;margin:0 0 22px}.hero-buttons{display:flex;align-items:center;gap:23px;flex-wrap:wrap}.hero-caption{display:flex;align-items:center;gap:11px;margin-top:43px;max-width:260px;font-size:10px;line-height:1.6;color:#8b7e72}.caption-line{display:block;width:27px;height:1px;background:#bd9f81;flex-shrink:0}
.float-previews{position:absolute;top:170px;right:5.3%;z-index:2;display:flex;flex-direction:column;align-items:flex-end;gap:17px}.float-preview{width:204px;display:flex;align-items:center;gap:10px;min-height:70px;padding:7px 9px;text-align:left;background:rgba(255,252,249,.96);color:var(--ink);border-radius:11px;box-shadow:0 8px 30px rgba(46,25,13,.12);transition:transform .25s,background .25s}.float-preview:hover{transform:translateX(-5px);background:#fff}.float-preview img{width:53px;height:53px;border-radius:7px;object-fit:cover;flex-shrink:0}.float-preview span:nth-child(2){display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.float-preview strong{font-size:11px;font-weight:700;white-space:nowrap}.float-preview small{color:#82766b;font-size:9px}.float-arrow{align-self:flex-start;font-size:13px}.float-preview-b{transform:translateX(-27px)}.float-preview-b:hover{transform:translateX(-32px)}.float-preview-c{transform:translateX(9px)}.float-preview-c:hover{transform:translateX(4px)}
.hero-categories{position:absolute;z-index:3;bottom:45px;left:66px;width:min(660px,54%);display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.hero-categories a{background:rgba(255,251,247,.91);border:1px solid rgba(220,201,185,.64);backdrop-filter:blur(8px);padding:17px 9px 15px;text-align:center;border-radius:11px;transition:background .2s,transform .2s}.hero-categories a:hover{background:#fff;transform:translateY(-2px)}.hero-categories strong{display:block;font:400 27px/1.2 var(--serif);color:var(--coffee)}.hero-categories span{display:block;font-size:10px;margin-top:7px;color:#8e7c6d;white-space:nowrap}
/* Presentation: same asymmetric text + 3 vertical paintings of Aeline original */
.about{display:grid;grid-template-columns:31% minmax(0,69%);gap:1%;padding:54px 55px 53px;margin-top:24px;background:var(--paper)}.about-copy{padding:11px 28px 10px 0}.about h2{font-family:var(--serif);font-size:clamp(35px,3.15vw,48px);line-height:1.24;margin:21px 0}.about-copy>p:not(.eyebrow){font-size:12px;line-height:1.85;color:var(--quiet);max-width:310px;margin-bottom:25px}.about-grid{min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.tall-art{height:414px;padding:0;display:block;text-align:left;position:relative;border-radius:17px;overflow:hidden;background:var(--linen);isolation:isolate;transition:transform .25s}.tall-art:hover{transform:translateY(-4px)}.tall-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}.tall-art:hover img{transform:scale(1.04)}.art-a img{object-position:center 45%}.art-b img{object-position:center 47%}.art-c img{object-position:center 50%}.art-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(22,15,11,.04) 46%,rgba(24,15,9,.78) 100%)}.tall-copy{position:absolute;bottom:22px;left:19px;right:10px;display:flex;align-items:flex-start;flex-direction:column;text-align:left;color:#fff}.round-mark{width:39px;height:39px;background:rgba(255,250,245,.96);display:grid;place-items:center;color:var(--coffee);border-radius:50%;font-family:var(--serif);font-size:16px;margin-bottom:18px}.tall-copy strong{font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.2}.tall-copy small{font-size:10px;opacity:.9;line-height:1.4;margin-top:11px}
.editorial-line{background:var(--paper);border-top:1px solid var(--border);border-radius:0 0 25px 25px;padding:26px 50px 32px;margin-bottom:23px;display:flex;align-items:center;justify-content:space-between;gap:24px}.editorial-line>span:first-child,.editorial-line>span:last-child{font-size:10px;letter-spacing:.17em;color:#ada096;font-weight:600}.editorial-script{font:italic 18px var(--serif);color:#b19f8f;text-align:center}
/* Gallery */
.gallery{background:var(--paper);display:grid;grid-template-columns:minmax(0,64%) minmax(0,36%);gap:24px;padding:47px 55px 50px;margin-bottom:7px}.gallery-main{min-width:0}.section-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.small-count{color:#a69788;letter-spacing:.08em;font-size:9px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 19px}.gallery-card{min-width:0}.gallery-image{display:block;position:relative;padding:0;width:100%;aspect-ratio:1.33;border-radius:15px;overflow:hidden;background:#e8dcd0;text-align:left}.gallery-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s,filter .25s}.gallery-image:hover img{transform:scale(1.04);filter:brightness(.92)}.gallery-image.portrait img{object-position:center 45%}.art-tag{position:absolute;bottom:12px;left:12px;background:rgba(251,248,245,.95);color:var(--coffee);font-size:9px;border-radius:999px;padding:8px 12px}.image-arrow{position:absolute;right:12px;bottom:12px;background:#fff;display:grid;place-items:center;font-size:14px;width:28px;height:28px;border-radius:50%;color:var(--coffee)}.gallery-card-label{display:flex;align-items:start;justify-content:space-between;gap:9px;padding:12px 1px 0}.gallery-card-label small{font-size:9px;color:#9a8a7c;letter-spacing:.12em}.gallery-card-label h3{font:400 21px/1.3 var(--serif);letter-spacing:-.035em;margin:5px 0 0}.gallery-card-link{width:31px;height:31px;background:transparent;border:1px solid var(--border);border-radius:50%;flex-shrink:0;color:var(--coffee);transition:background .2s}.gallery-card-link:hover{background:var(--linen)}.gallery-aside{padding:0 4px 0 24px;min-width:0}.aside-ornament{font-size:30px;color:#94775e;text-align:right;margin:-15px 4px 37px}.gallery-aside h2{font:400 clamp(34px,3.1vw,45px)/1.25 var(--serif);margin:21px 0 14px}.gallery-aside>p:not(.eyebrow){font-size:12px;line-height:1.95;color:var(--quiet);max-width:310px;margin-bottom:10px}.aside-card{position:relative;overflow:hidden;border-radius:20px;background:#e6d4c2;padding:27px 23px 24px;margin-top:31px}.aside-card::before{content:'';position:absolute;right:-43px;top:-70px;width:210px;height:210px;border:1px solid rgba(112,75,49,.12);border-radius:50%}.aside-kicker{font-size:9px;letter-spacing:.14em;color:#8b6d54;font-weight:700}.aside-card h3{position:relative;font:400 27px/1.21 var(--serif);letter-spacing:-.04em;margin:16px 0 14px}.aside-card>p:not(.aside-kicker){position:relative;color:#755b46;line-height:1.7;font-size:11px;margin-bottom:20px}.aside-card .button{min-height:40px;padding:0 13px;font-size:10px}.small-aside-sign{display:block;font:italic 13px var(--serif);color:#856950;margin-top:19px}
/* Footer */
.footer{display:grid;grid-template-columns:1.55fr .85fr .85fr .8fr .8fr;gap:35px;padding:44px 52px 52px}.footer-brand p{font-size:11px;color:#88796c;line-height:1.8;margin:16px 0 0}.footer-column h4{font-size:11px;margin:4px 0 15px}.footer-column a{display:block;font-size:10px;color:#8c7e73;line-height:2.45}.footer-column a:hover{color:var(--coffee)}.footer-note{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:20px}.mini-flower{font-size:30px;color:var(--roast)}.footer-note small{font-size:10px;color:#948477;line-height:1.7}
/* Art lightbox, showing full uncropped image */
.lightbox[hidden]{display:none!important}.lightbox{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.lightbox-backdrop{position:absolute;inset:0;background:rgba(24,15,11,.82);backdrop-filter:blur(6px)}.lightbox-dialog{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.75fr);grid-template-rows:minmax(0,1fr);width:min(1090px,96vw);max-height:min(810px,91dvh);min-height:360px;background:var(--paper);border-radius:19px;box-shadow:0 20px 100px rgba(0,0,0,.26);overflow:hidden}.lightbox-photo-wrap{min-height:300px;padding:24px;background:#ddd0c3;display:grid;place-items:center;overflow:hidden}.lightbox-photo-wrap img{max-width:100%;max-height:min(755px,81dvh);height:auto;width:auto;object-fit:contain;box-shadow:0 7px 26px rgba(45,25,12,.12)}.lightbox-info{padding:62px 30px 80px;align-self:center}.lightbox-info>span:first-child{font-size:10px;letter-spacing:.14em;color:var(--roast);font-weight:700}.lightbox-info h2{font:400 37px/1.22 var(--serif);margin:20px 0}.lightbox-info p{color:#7d7065;font-size:13px;line-height:1.85}.lightbox-hint{color:#aa9889;font-size:10px;line-height:1.6;display:block;margin-top:32px}.lightbox-close{position:absolute;z-index:3;right:18px;top:18px;width:38px;height:38px;background:#eee4db;border-radius:50%;display:grid;place-items:center}.lightbox-controls{position:absolute;right:28px;bottom:25px;display:flex;gap:10px}.lightbox-controls button{width:39px;height:39px;border-radius:50%;border:1px solid #cdb9a8;color:var(--coffee);background:transparent;font-size:19px;transition:background .2s}.lightbox-controls button:hover{background:#e8d6c5}
@media(max-width:1200px){.header{padding-inline:35px;gap:15px}.nav{gap:16px}.hero-copy{padding-left:45px}.hero-categories{left:45px}.float-previews{right:3%}.about,.gallery{padding-inline:35px}.about{grid-template-columns:34% minmax(0,65%)}.about h2{font-size:37px}.tall-art{height:380px}.gallery{grid-template-columns:62% minmax(0,37%);gap:15px}.footer{gap:20px;padding-inline:35px}}
@media(max-width:960px){.header{height:76px}.nav{position:absolute;display:none;flex-direction:column;align-items:stretch;gap:0;top:65px;left:25px;right:25px;background:rgba(253,249,245,.98);border:1px solid var(--border);border-radius:15px;padding:11px;box-shadow:var(--shadow);z-index:30}.nav.is-open{display:flex}.nav a{display:block;padding:13px 15px;font-size:14px;border-radius:8px}.nav a:hover{background:#eee5dd}.button-header{margin-left:auto}.mobile-toggle{display:flex}.hero{min-height:700px}.hero-visual{left:29%}.hero-copy{width:60%;padding-top:87px}.hero-copy h1{font-size:clamp(47px,5.6vw,65px)}.float-previews{top:158px;transform:scale(.82);transform-origin:top right}.hero-categories{width:63%}.about{display:block}.about-copy{padding-bottom:24px}.about-copy>p:not(.eyebrow){max-width:540px}.about-grid{gap:13px}.tall-art{height:400px}.gallery{display:block}.gallery-aside{padding:37px 0 0}.aside-ornament{display:none}.gallery-aside>p:not(.eyebrow){max-width:650px}.aside-card{max-width:570px}.footer{grid-template-columns:repeat(4,1fr)}.footer-brand{grid-column:1/-1}.footer-note{align-items:flex-start;text-align:left}}
@media(max-width:660px){.page-wrap{padding:8px 8px 0}.rounded-panel{border-radius:19px}.hero{min-height:0;display:flex;flex-direction:column;overflow:hidden}.header{height:70px;padding:0 19px;order:0}.brand{font-size:18px}.brand-glyph{font-size:24px}.button-header{display:none}.nav{left:12px;right:12px;top:63px}.hero-copy{order:1;width:100%;padding:39px 22px 30px}.hero-copy h1{font-size:clamp(43px,10.6vw,67px);line-height:1.13;margin:17px 0 16px}.hero-lead{font-size:12px;max-width:390px;line-height:1.77}.hero-buttons{gap:13px}.hero-buttons .button{padding:0 15px;font-size:11px}.hero-buttons .subtle-link{font-size:11px}.hero-caption{margin-top:21px}.hero-visual{order:2;position:relative;z-index:auto;inset:auto;flex-shrink:0;min-height:375px;background-position:center 38%;border-radius:14px;margin:0 12px 13px}.hero-gradient{display:none}.float-previews{display:none}.hero-categories{order:3;position:relative;left:auto;bottom:auto;width:auto;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 12px 15px;gap:9px}.hero-categories a{padding:13px 8px}.hero-categories strong{font-size:22px}.hero-categories span{font-size:10px}.about{margin-top:13px;padding:34px 19px 23px}.about h2{font-size:clamp(34px,8.8vw,50px);margin:16px 0}.about-copy>p:not(.eyebrow){font-size:12px}.about-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 3px 10px;margin-right:-19px;scrollbar-width:thin}.tall-art{height:335px;flex:0 0 69%;scroll-snap-align:start}.tall-copy strong{font-size:22px}.editorial-line{padding:23px 20px;display:block;text-align:center;margin-bottom:13px}.editorial-line>span:first-child,.editorial-line>span:last-child{display:block;font-size:9px}.editorial-script{display:block;font-size:18px;margin:12px 0}.gallery{padding:32px 19px 24px}.section-topline{align-items:start;flex-direction:column;gap:9px;margin-bottom:17px}.small-count{font-size:8px}.gallery-grid{gap:21px 12px}.gallery-image{aspect-ratio:.92;border-radius:12px}.gallery-image img{object-position:center}.gallery-card-label{gap:4px}.gallery-card-label small{font-size:8px}.gallery-card-label h3{font-size:18px;line-height:1.28}.gallery-card-link{width:25px;height:25px;font-size:12px}.art-tag{bottom:8px;left:7px;font-size:8px;padding:6px 8px}.image-arrow{right:8px;bottom:8px;width:24px;height:24px}.gallery-aside{padding-top:39px}.gallery-aside h2{font-size:38px}.aside-card{margin-top:22px;padding:24px 20px}.footer{padding:36px 19px;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 12px}.footer-brand{grid-column:span 2}.footer-note{grid-column:span 2;align-items:flex-start;gap:3px}.mini-flower{font-size:22px}.lightbox{padding:11px}.lightbox-dialog{display:flex;flex-direction:column;width:100%;max-height:96dvh;min-height:0;overflow-y:auto}.lightbox-photo-wrap{padding:15px;min-height:250px;flex-shrink:1;overflow:hidden}.lightbox-photo-wrap img{max-height:58dvh}.lightbox-info{align-self:auto;padding:18px 20px 75px}.lightbox-info h2{font-size:27px;margin:10px 0}.lightbox-info p{font-size:12px;margin-bottom:0}.lightbox-hint{margin-top:10px}.lightbox-controls{bottom:18px;right:18px}.lightbox-close{right:11px;top:11px}}
@media(max-width:380px){.hero-copy{padding-inline:17px}.hero-copy h1{font-size:42px}.hero-buttons{gap:9px}.hero-buttons .subtle-link{font-size:10px}.hero-visual{min-height:320px}.tall-art{flex-basis:77%}.gallery-card-label h3{font-size:16px}.gallery{padding-inline:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* DOSSIÊ — integração WhatsApp e Instagram */
.header-instagram{width:37px;height:37px;display:inline-grid;place-items:center;flex:0 0 auto;border:1px solid rgba(109,76,54,.26);border-radius:50%;color:var(--coffee);background:rgba(255,251,247,.65);transition:background .2s,transform .2s}
.header-instagram:hover,.footer-socials a:hover{background:#e8d5c0;transform:translateY(-2px)}
.header-instagram .icon{width:18px;height:18px}
.hero-secondary-actions{display:flex;align-items:center;gap:17px;flex-wrap:wrap;min-width:0}
.button-order{min-height:43px;padding:0 15px;border:1px solid var(--coffee);color:var(--coffee);background:rgba(255,251,247,.95);box-shadow:0 3px 14px rgba(65,36,21,.04);font-size:11px}
.button-order:hover{background:var(--coffee);color:#fff9f2}
.button-order .icon{width:16px;height:16px}
.footer-social-title{margin:2px 0 0;font-size:11px;font-weight:700;color:var(--coffee);white-space:nowrap}
.footer-socials{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.footer-socials a{width:40px;height:40px;display:grid;place-items:center;background:#e8dfd5;color:var(--coffee);border:1px solid #d8c9bb;border-radius:50%;transition:background .2s,transform .2s}
.footer-socials .icon{width:19px;height:19px}
@media (max-width:960px){.footer-socials{justify-content:flex-start}}
@media (max-width:660px){
  .header-instagram{margin-left:auto;width:39px;height:39px}
  .hero-buttons{align-items:flex-start;flex-direction:column;gap:13px}
  .hero-secondary-actions{gap:12px 16px;width:100%}
  .hero-secondary-actions .subtle-link{font-size:11px}
  .hero-secondary-actions .button-order{min-height:40px;padding-inline:12px;font-size:10px}
  .footer-socials{justify-content:flex-start}
}
@media (max-width:380px){.hero-secondary-actions{gap:8px}.hero-secondary-actions .subtle-link{font-size:10px}.hero-secondary-actions .button-order{font-size:10px;padding:0 9px}}

/* Ajustes de enquadramento das novas obras */
.hero-visual{background-color:#f2e7da;}
.art-b img{object-position:center 42%;}
.art-c img{object-position:center 38%;}
.gallery-image[data-art="3"] img{object-position:center 18%;}

/* -------------------------------------------------------------
   CORREÇÃO: botões do hero x categorias em janelas compactas
   A faixa de categorias entra no fluxo normal do layout, em
   vez de ficar sobre o texto com position:absolute. Assim,
   ao mudar zoom, tamanho da janela ou fonte, não há colisão.
   A regra mobile anterior (<=660px) permanece preservada.
   ------------------------------------------------------------- */
@media (min-width: 661px) {
  .hero-categories {
    position: relative;
    bottom: auto;
    left: auto;
    margin: 39px 0 42px 66px;
  }
}
@media (min-width: 661px) and (max-width: 1200px) {
  .hero-categories { margin-left: 45px; }
}
