/* Griffe da Prata — editorial black collection. Loaded only by index.html. */
:root{--black:#050505;--black-soft:#101010;--black-surface:#151515;--silver:#d5d7d5;--silver-muted:#9da19e;--silver-line:#3a3c3a;--white:#f5f5f2}
body{background:var(--black);color:var(--white);font-size:14px}
body::selection{background:#e4e6e2;color:#050505}
.announcement{background:#111;color:#d9dcd8;border-bottom:1px solid #292b29}
.header{height:94px;background:rgba(5,5,5,.95);border-color:#2a2c2a;padding:13px 7%;backdrop-filter:blur(12px)}
.brand img,.footer-top>a img{filter:brightness(0) invert(1);mix-blend-mode:normal}
.header nav{gap:30px;color:#d9dcd7;letter-spacing:.06em;font-size:10px}
.header nav a:hover{color:#fff}.header-contact{color:#e7e9e5;border-color:#747875}.menu-toggle{color:#f5f5f2;border:1px solid #4d504e}
.hero{min-height:690px;background:#050505;grid-template-columns:minmax(0,1fr) minmax(420px,1fr);border-bottom:1px solid #2a2c2a}
.hero-copy{padding:92px 7vw 70px 10vw;position:relative;z-index:2}
.hero .eyebrow,.eyebrow,.micro{color:#aeb2ad;letter-spacing:.18em}
.hero h1,h2,h3{color:#f4f5f1}.hero h1{font-size:clamp(58px,5.2vw,82px);letter-spacing:-.055em}.hero h1 em,h2 em{color:#c5c8c4}
.hero-text{color:#aeb2ad;font-size:12px;max-width:360px}
.button,.button.dark,.button.outline{background:#f1f2ee;color:#090909;border:1px solid #f1f2ee;border-radius:0;box-shadow:none;text-transform:uppercase;letter-spacing:.13em;font-size:10px;padding:15px 19px;min-height:48px}
.button:hover,.button.dark:hover,.button.outline:hover{background:transparent;color:#f4f5f1;border-color:#e7e9e5;box-shadow:none}
.hero-note{color:#9da19e}.hero-visual{background:#070707;border-left:1px solid #2a2c2a}.hero-visual>img{mix-blend-mode:normal;object-fit:contain;padding:7%;filter:contrast(1.06) brightness(.96)}.hero-edition,.hero-caption{color:#d6d9d4}.hero-caption a{border:1px solid #d4d7d1;color:#fff;border-radius:0;background:#111}.hero-caption a:hover{background:#f5f5f2;color:#050505}
.benefits{background:#090909;border-color:#303230;padding:25px 8%}.benefits>div{color:#d9dbd7}.benefits>div>.icon{color:#d8dcd6}.benefits p{font-size:10px}
.section{background:#050505;padding:112px 9%}.section-heading>p,.collection-bottom p{color:#aeb2ad}.section-heading{margin-bottom:56px}.section-heading h2{font-size:clamp(43px,4vw,63px)}
.products{gap:62px 28px}.product-photo{background:#111;border:1px solid #242624;aspect-ratio:.92}.product-photo img{mix-blend-mode:normal;object-fit:contain;padding:5%;filter:contrast(1.06)}.product-photo:hover img{transform:scale(1.03)}.zoom{background:#f4f5f1;color:#070707;border:0;border-radius:0}.product-info{padding:18px 0 0}.product-info .micro{color:#aeb2ad}.product-info h3{color:#f3f4f0}.product-info p{color:#aeb2ad}.product-cta{border:1px solid #585b58;color:#f1f2ef;border-radius:0;padding:11px 14px;margin-top:15px}.product-cta:hover{background:#f4f5f1;color:#090909}.collection-bottom{padding-top:30px}.text-link,.small-link{border:1px solid #686b67;color:#f0f1ee;border-radius:0;padding:11px 14px}.text-link:hover,.small-link:hover{background:#f1f2ee;color:#080808}
.men{background:#0d0d0d}.men-image{height:690px;background:#161616}.men-image img{mix-blend-mode:normal;filter:grayscale(.12) contrast(1.08);object-position:center 25%}.men-copy{padding:80px 15%;background:#0d0d0d}.men-copy>p:not(.eyebrow){color:#b5b9b4}.men-bottom{color:#939792}
.wholesale{background:#050505;border-color:#303230}.wholesale>div>p:not(.eyebrow){color:#b5b9b4}
.about{background:#111;gap:9%;padding-top:95px;padding-bottom:95px}.about-portrait{border-color:#3a3d39;background:#1c1c1c}.about-portrait:after{background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.6))}.about-mark{background:#050505;border-color:#565955;border-radius:0}.about-mark img{filter:brightness(0) invert(1);mix-blend-mode:normal}.about>div>p:not(.eyebrow){color:#b9bdb8}.signature{color:#f5f5f2}.signature small{color:#aeb2ad}
.faq{background:#080808}.questions details{border-color:#353735}.questions summary{color:#f0f1ed}.questions summary .icon{color:#d9ddd6}.questions details p{color:#b7bbb5}
.last-call{background:#e8e9e5;color:#080808}.last-call h2{color:#090909}.last-call h2 em{color:#555b56}.last-call .eyebrow,.service-hours{color:#535852}.last-call .button{background:#090909;color:#f5f5f2;border-color:#090909}.last-call .button:hover{background:transparent;color:#090909}
footer{background:#050505;color:#ecede9}.footer-top{padding-bottom:50px}.footer-top .micro{color:#aaaead}.footer-top a:not(:first-child),.footer-top span,.footer-bottom{color:#afb3ae}.footer-top a:not(:first-child),.footer-bottom>a{border-color:#555955;color:#e9ebe6;border-radius:0}.footer-top a:not(:first-child):hover,.footer-bottom>a:hover{background:#f1f2ee;color:#080808}.footer-bottom{border-color:#303230}.float-wa{background:#f4f5f1;color:#080808;border:1px solid #f4f5f1;border-radius:0;box-shadow:0 10px 28px #0008}.float-wa:hover{background:#080808;color:#f4f5f1}
dialog{background:#0a0a0a;color:#f5f5f2}.close-lightbox{background:#f4f5f1;color:#080808;border:0;border-radius:0}
@media(max-width:760px){
 body{font-size:14px}.announcement{padding:9px 10px}.header{height:78px;padding:9px 6%;background:#050505}.brand img{width:60px;height:62px}.header nav{top:78px;background:#050505;border-color:#333533}.header-contact{border:1px solid #555955;border-radius:0;padding:8px 10px;font-size:9px}.menu-toggle{border-radius:0}
 .hero{display:flex;min-height:auto;flex-direction:column;background:#050505}.hero-copy{padding:64px 7% 50px;align-items:center;text-align:center}.hero h1{font-size:clamp(49px,14vw,63px)}.hero-text{font-size:12px;max-width:320px}.hero-visual{height:440px;width:100%;border:0;border-top:1px solid #292b29}.hero-visual>img{padding:5%;object-fit:contain}.hero-edition{left:7%;top:20px}.hero-caption{left:7%;right:7%;bottom:20px;text-align:left}
 .benefits{padding:20px 7%;gap:18px}.benefits>div{justify-content:center}.section{padding:74px 7%}.section-heading{display:block;text-align:center;margin-bottom:38px}.section-heading>p{padding:18px 0 0;font-size:11px}.section-heading h2{font-size:46px}.products{gap:42px 14px}.product-photo{aspect-ratio:1}.product-info{text-align:center}.product-info h3{font-size:25px}.product-cta{margin:15px auto 0}.collection-bottom{text-align:center}.collection-bottom p{margin-bottom:19px}
 .men{display:flex;flex-direction:column}.men-image{height:480px}.men-copy{padding:62px 7%;align-items:center;text-align:center}.men-copy h2{font-size:48px}.men-copy>p:not(.eyebrow){max-width:350px}.men-bottom{margin-top:33px}.wholesale,.about,.faq{display:flex;flex-direction:column;text-align:center;gap:35px}.wholesale .button,.wholesale .small-link{margin-left:auto;margin-right:auto}.about{padding-top:65px;padding-bottom:65px}.about-portrait{min-height:440px}.about-portrait>img{min-height:440px}.faq .questions{text-align:left}.last-call{padding:65px 7%}.last-call h2{font-size:48px}.footer-top{text-align:center;grid-template-columns:1fr 1fr}.footer-top>a{grid-column:1 / -1;justify-self:center}.footer-top>div:last-child{grid-column:2}.footer-top>div:nth-child(3){grid-column:1}.footer-top a:not(:first-child),.footer-bottom>a{margin:8px auto 0}.footer-bottom{align-items:center;flex-direction:column;padding-top:20px}.float-wa{width:48px;height:48px}
}


/* Deep-black product presentation and rounded controls. */
body,.header,.hero,.hero-visual,.section,.wholesale,footer,.faq{background:#000}
.product-photo{background:#000;border-color:#242424}
.product-photo img,.hero-visual>img{background:#000}
.button,.button.dark,.button.outline,.product-cta,.text-link,.small-link,.header-contact,.menu-toggle,.hero-caption a,.zoom,.footer-top a:not(:first-child),.footer-bottom>a{border-radius:var(--control-radius)}


/* Structured footer — same information hierarchy as El Santo, adapted to the Griffe palette. */
.griffe-footer{background:#000;color:#d1d4ce;border-top:1px solid #30322f}
.griffe-footer-main{padding:76px 9vw 58px;display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,2.25fr);gap:7vw}
.griffe-footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:18px;max-width:260px}
.griffe-footer-brand img{width:170px;height:auto;filter:brightness(0) invert(1);mix-blend-mode:normal}
.griffe-footer-brand span{color:#9fa39d;font-size:10px;letter-spacing:.14em;text-transform:uppercase;line-height:1.6}
.griffe-footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:clamp(28px,5vw,72px)}
.griffe-footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:9px;min-width:0}
.griffe-footer-column h3{margin:0 0 13px;font:600 10px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#f0f2ed}
.griffe-footer-column>a:not(.griffe-footer-arrow){color:#f1f2ee;font-size:15px}.griffe-footer-column>span{color:#a6aaa4;font-size:12px;line-height:1.7}
.griffe-footer-arrow,.griffe-footer-credit{display:inline-flex;align-items:center;gap:6px;margin-top:7px;padding:9px 13px;border:1px solid #555954;border-radius:var(--control-radius);color:#f0f1ed;font-size:11px;line-height:1.1}
.griffe-footer-arrow:hover,.griffe-footer-credit:hover{background:#f1f2ed;color:#090909;border-color:#f1f2ed}
.griffe-footer-arrow .icon{width:14px;height:14px;min-width:14px}.griffe-footer-phone{font-size:17px!important;font-weight:600;letter-spacing:.01em}
.griffe-footer-bottom{padding:22px 9vw;border-top:1px solid #30322f;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#898e88;font-size:10px;letter-spacing:.08em}
.griffe-footer-credit{margin:0;color:#cdd0cb}
@media(max-width:760px){.griffe-footer-main{padding:58px 7% 40px;grid-template-columns:1fr;gap:43px}.griffe-footer-brand{margin:0 auto;align-items:center;text-align:center}.griffe-footer-brand img{width:150px}.griffe-footer-grid{grid-template-columns:1fr;gap:34px}.griffe-footer-column{align-items:center;text-align:center}.griffe-footer-column h3{margin-bottom:8px}.griffe-footer-bottom{padding:20px 7%;flex-direction:column;text-align:center;gap:15px}.griffe-footer-credit{margin:0}}


/* Griffe floating contact — El Santo interaction pattern in the Griffe silver palette. */
.float-wa{position:fixed;z-index:50;right:24px;bottom:24px;display:flex;align-items:center;gap:10px;width:auto;height:58px;min-height:58px;padding:0 20px 0 16px;border:1px solid #e5e7e2;border-radius:999px;background:#e8eae5;color:#080808;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 14px 36px rgba(0,0,0,.45);transition:transform .25s,background .25s,color .25s}
.float-wa:hover{transform:translateY(-4px);background:#090909;color:#f2f3ef}
.float-wa svg{width:28px;height:28px;flex:0 0 28px}
.float-wa span{white-space:nowrap}
.float-wa:after{content:"";position:absolute;inset:-7px;border:1px solid rgba(214,218,210,.52);border-radius:999px;animation:griffe-float-pulse 2.2s infinite;pointer-events:none}
@keyframes griffe-float-pulse{0%{opacity:.8;transform:scale(.96)}70%,100%{opacity:0;transform:scale(1.12)}}
@media(max-width:760px){.float-wa{right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:58px;height:58px;min-height:58px;padding:0;justify-content:center}.float-wa span{display:none}}


/* Full-viewport Griffe hero — editorial and intentionally product-free. */
.header .brand{display:flex;align-items:center;gap:10px;width:auto;height:62px;overflow:visible}
.header .brand-symbol,.header .brand-wordmark{position:relative;display:block;overflow:hidden;flex:0 0 auto}
.header .brand-symbol{width:42px;height:48px}
.header .brand-symbol img{position:absolute;top:0;left:-23px;width:88px;height:auto;max-width:none;filter:brightness(0) invert(1);mix-blend-mode:normal}
.header .brand-wordmark{width:112px;height:38px}
.header .brand-wordmark img{position:absolute;top:-75px;left:0;width:112px;height:auto;max-width:none;filter:brightness(0) invert(1);mix-blend-mode:normal}

.hero{position:relative;display:flex;align-items:center;justify-content:center;min-height:calc(100svh - 130px);padding:58px 7vw 86px;background:#000;border-bottom:1px solid #242624}
.hero-copy{display:flex;align-items:center;justify-content:center;width:min(860px,100%);padding:0;text-align:center}
.hero-logo{display:block;width:110px;height:auto;margin:0 0 18px;filter:brightness(0) invert(1);mix-blend-mode:normal}
.hero .eyebrow{margin:0 0 26px;color:#afb3ae;font-size:11px;letter-spacing:.28em;line-height:1.45}
.hero h1{margin:0;color:#f4f5f1;font-size:clamp(64px,7.25vw,106px);line-height:.83;letter-spacing:-.065em}
.hero h1 em{font-weight:400;color:#d6d8d4}
.hero-text{max-width:530px;margin:38px auto 0;color:#b0b4af;font-size:15px;line-height:1.75}
.hero-note{margin-top:42px;color:#979c96;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.hero-scroll{position:absolute;left:50%;bottom:27px;display:inline-flex;align-items:center;justify-content:center;gap:9px;color:#e0e2de;text-align:center;text-transform:uppercase;letter-spacing:.18em;line-height:1;white-space:nowrap;transform:translateX(-50%);animation:griffe-hero-scroll 1.7s infinite}
.hero-scroll strong{font:700 10px/1 var(--sans);letter-spacing:.16em}
.hero-scroll span{font-size:18px;line-height:1}
@keyframes griffe-hero-scroll{0%,100%{transform:translateX(-50%)}50%{transform:translate(-50%,7px)}}

@media(max-width:760px){
  .header .brand{gap:7px;height:50px}
  .header .brand-symbol{width:32px;height:38px}
  .header .brand-symbol img{left:-18px;width:70px}
  .header .brand-wordmark{width:88px;height:30px}
  .header .brand-wordmark img{top:-59px;width:88px}
  .hero{min-height:calc(100svh - 115px);padding:37px 7% 75px}
  .hero-copy{padding:0}
  .hero-logo{width:86px;margin-bottom:15px}
  .hero .eyebrow{margin-bottom:20px;font-size:8px;letter-spacing:.23em}
  .hero h1{font-size:clamp(50px,16vw,68px);line-height:.86}
  .hero-text{max-width:320px;margin-top:31px;font-size:12px;line-height:1.8}
  .hero-note{margin-top:31px;font-size:8px;letter-spacing:.1em}
  .hero-scroll{bottom:20px;gap:7px}
  .hero-scroll strong{font-size:8px}
  .hero-scroll span{font-size:15px}
}


/* Hero hierarchy and clean horizontal header logo. */
.header .brand{gap:11px}
.header .brand-symbol{width:44px;height:44px;overflow:visible}
.header .brand-symbol img{position:static;display:block;width:44px;height:44px;max-width:none;filter:none;mix-blend-mode:normal}
.header .brand-wordmark{width:116px;height:45px}
.header .brand-wordmark img{top:-72px;width:116px}
.hero-logo{width:242px;margin-bottom:28px}
.hero h1{font-size:clamp(42px,4.7vw,69px);line-height:.9}
.hero h1+ .hero-text{margin-top:30px}
.float-wa{opacity:0;pointer-events:none;transform:translateY(18px);transition:opacity .28s ease,transform .28s ease,background .25s,color .25s}
.float-wa.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}
.float-wa.is-visible:hover{transform:translateY(-4px)}
@media(max-width:760px){
  .header .brand{gap:8px}
  .header .brand-symbol{width:37px;height:37px}
  .header .brand-symbol img{width:37px;height:37px}
  .header .brand-wordmark{width:96px;height:38px}
  .header .brand-wordmark img{top:-60px;width:96px}
  .hero-logo{width:189px;margin-bottom:22px}
  .hero h1{font-size:clamp(33px,10.4vw,44px);line-height:.93}
  .hero h1+ .hero-text{margin-top:25px}
}


/* Compact single-row benefits and clean header without announcement banner. */
.hero{min-height:calc(100svh - 94px)}
@media(max-width:760px){
  html{scroll-padding-top:78px}
  .hero{min-height:calc(100svh - 78px)}
  .benefits{grid-template-columns:repeat(4,minmax(0,1fr));padding:21px 4%;gap:7px}
  .benefits>div{min-width:0;gap:7px;align-items:center;justify-content:flex-start;text-align:center}
  .benefits>div>.icon{width:25px;height:25px;flex:0 0 25px}
  .benefits p{font-size:8px;line-height:1.35;word-break:normal}
  .benefits strong{font-size:10px;line-height:1.25}
}


/* Single menu emblem. */
.header .brand-menu-mark{display:flex;width:58px;height:58px;overflow:visible}
.header .brand-menu-mark>img{display:block;width:58px;height:58px;max-width:none;object-fit:contain;filter:none;mix-blend-mode:normal}
@media(max-width:760px){.header .brand-menu-mark{width:48px;height:48px}.header .brand-menu-mark>img{width:48px;height:48px}}


/* Isolated header mark: no inherited logo dimensions, crop or filter rules. */
.header .menu-brand-icon{
  display:block!important;
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  max-width:56px!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  flex:0 0 56px!important;
  line-height:0!important;
}
.header .menu-brand-icon>img{
  display:block!important;
  width:56px!important;
  height:56px!important;
  min-width:56px!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  clip-path:none!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  transform:none!important;
}
@media(max-width:760px){
  .header .menu-brand-icon{width:48px!important;height:48px!important;min-width:48px!important;max-width:48px!important;flex-basis:48px!important}
  .header .menu-brand-icon>img{width:48px!important;height:48px!important;min-width:48px!important}
}


/* Keep the hero statement readable on every screen size. */
.hero-text span{display:block}
.hero-text span+span{margin-top:9px}
@media(max-width:760px){.hero-text span+span{margin-top:10px}}


/* Subtle image rounding for product and founder photography. */
.product-photo{border-radius:12px;overflow:hidden}
.about-portrait{border-radius:14px;overflow:hidden}


/* Feminine editorial section, paired with the masculine collection. */
.feminine{display:grid;grid-template-columns:1fr 1fr;background:#090909}
.feminine-image{height:690px;background:#111;overflow:hidden}
.feminine-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%;filter:contrast(1.04) saturate(.9)}
.feminine-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:80px 15%;background:#090909}
.feminine-copy>p:not(.eyebrow){max-width:400px;color:#b5b9b4}
.feminine-copy h2{font-size:clamp(46px,4.3vw,68px)}
.feminine-bottom{margin-top:42px;color:#939792;font-size:9px;letter-spacing:.18em}
.zoom{width:35px;height:35px}
.zoom .icon{width:18px;height:18px}
@media(max-width:760px){
  .feminine{display:flex;flex-direction:column}
  .feminine-image{height:480px}
  .feminine-copy{padding:62px 7%;align-items:center;text-align:center}
  .feminine-copy h2{font-size:48px}
  .feminine-copy>p:not(.eyebrow){max-width:350px}
  .feminine-bottom{margin-top:33px}
  .zoom{width:35px;height:35px;bottom:8px;right:8px}
  .zoom .icon{width:18px;height:18px}
}


/* Compact section CTAs: 20% less vertical presence. */
.feminine-copy .button,.men-copy .button,.wholesale .button{min-height:38px;padding-top:12px;padding-bottom:12px}
@media(max-width:760px){.feminine-copy .button,.men-copy .button,.wholesale .button{min-height:43px;padding-top:12px;padding-bottom:12px}}


/* Smaller diagonal arrows across the Griffe, keeping the requested link arrows unchanged. */
main a .icon{transform:scale(.75);transform-origin:center}
.wholesale .small-link .icon,.griffe-footer-arrow[href="links/"] .icon{transform:none}


/* Breathing room before the feminine collection action. */
.feminine-copy .button{margin-top:26px}
@media(max-width:760px){.feminine-copy .button{margin-top:24px}}


/* About label above the portrait and a clear divider before FAQs. */
.about-media{display:flex;flex-direction:column;align-items:stretch}
.about-section-label{margin:0 0 17px!important;color:#aeb2ad!important}
.faq{border-top:1px solid #303230}
@media(max-width:760px){.about-section-label{text-align:center;margin-bottom:14px!important}}


/* Softer product lightbox frame and close control. */
dialog{border-radius:14px;overflow:hidden}
dialog img{border-radius:10px}
.close-lightbox{border-radius:10px}


/* Stronger, closer About label. */
.about{padding-top:64px}
.about-section-label{font-size:18px!important;letter-spacing:.18em!important}
@media(max-width:760px){.about{padding-top:45px}.about-section-label{font-size:16px!important}}


/* Tighter founder signature. */
.signature small{font-size:6.75px;margin-top:1px}
@media(max-width:760px){.signature small{font-size:9.75px;margin-top:2px}}


/* Larger hero scroll cue. */
.hero-scroll{gap:11.25px}
.hero-scroll strong{font-size:12.5px}
.hero-scroll span{font-size:22.5px}
@media(max-width:760px){.hero-scroll{gap:8.75px}.hero-scroll strong{font-size:10px}.hero-scroll span{font-size:18.75px}}


/* Clean menu trigger. */
.menu-toggle{border:0}


/* 30% larger menu control, still borderless. */
.menu-toggle{width:47px;height:47px;padding:0;display:grid;place-items:center}
.menu-toggle .icon{width:31px;height:31px;min-width:31px}


/* El Santo–style translucent navigation bar. */
.header{background:rgba(5,5,5,.78);backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%)}
@media(max-width:760px){.header{background:rgba(5,5,5,.78)}}
