/* granddsabet.com — Contrast & Typography. B&W, dramatic type */
:root{ --w:#fff; --b:#000; --g:#333; }
*{box-sizing:border-box;} body{margin:0;font-family:"Archivo Black",sans-serif;font-size:1rem;line-height:1.5;color:var(--b);background-color:var(--w);}
body::before{content:'';position:fixed;inset:0;z-index:-1;background-image:url('../img/bg-granddsabet.jpg');background-size:cover;background-position:center;background-attachment:fixed;filter:blur(6px);box-shadow:inset 0 0 120px rgba(255,255,255,0.04),inset 0 0 200px rgba(0,0,0,0.15);}
.b{background:var(--b);color:var(--w);text-align:center;padding:0.5rem 1rem;font-size:0.8rem;font-family:sans-serif;} .b a{color:var(--w);text-decoration:underline;}
.h{padding:1.25rem 1rem;border-bottom:6px double var(--b);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;background:rgba(255,255,255,0.96);box-shadow:0 2px 12px rgba(0,0,0,0.06);}
.h .l{font-size:1.5rem;font-weight:900;color:var(--b);text-decoration:none;letter-spacing:-0.04em;display:inline-flex;align-items:center;gap:0.5rem;grid-column:3;justify-self:end;} .h .logo-ico .logo-icon{width:26px;height:26px;} .h .logo-icon svg{width:100%;height:100%;stroke:var(--b);} .h .n{display:flex;gap:1.25rem;font-family:sans-serif;font-weight:400;grid-column:2;justify-self:center;} .h .n a{color:var(--g);text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent;} .h .n a:hover{color:var(--b);border-bottom-color:var(--b);} .h .a18{font-size:0.7rem;background:var(--b);color:var(--w);padding:0.25rem 0.5rem;outline:2px solid var(--b);outline-offset:2px;}
@media(max-width:700px){.h{grid-template-columns:1fr;}.h .n{grid-column:1;order:1;}.h .l{grid-column:1;order:2;justify-self:start;}}
.m{max-width:900px;margin:0 auto;padding:2rem 1rem;background:rgba(255,255,255,0.94);border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,0.08);}
.hero-t h1{font-size:clamp(2rem,5vw,3rem);font-weight:900;margin:0 0 0.5rem;letter-spacing:-0.04em;line-height:1.1;} .hero-t p{font-family:sans-serif;font-size:1rem;color:var(--g);margin:0;}
.hero-t-big{padding:3rem 1rem;} .hero-t-big .hero-p{margin-bottom:1.5rem;} .hero-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;max-width:560px;margin:0 auto;text-align:left;} .hero-col{border:2px solid var(--b);padding:1rem;} .hero-col h3{font-size:0.95rem;margin:0 0 0.35rem;} .hero-col p{margin:0;font-family:sans-serif;font-size:0.9rem;color:var(--g);}
.sec-t{padding:1.25rem 0;border-top:2px solid var(--b);} .sec-title-t{font-size:1.2rem;margin:0 0 0.5rem;} .sec-t p{margin:0;font-family:sans-serif;color:var(--g);}
.notice-disclosure{background:rgba(0,0,0,0.04);border:2px solid var(--b);border-radius:8px;padding:1.25rem 1rem;margin:0.5rem 0 0;} .notice-disclosure .sec-title-t{margin-top:0;} .disclosure-list{margin:0;padding-left:1.25rem;font-family:sans-serif;color:var(--g);line-height:1.6;} .disclosure-list li{margin:0.35rem 0;}
.disclosure-t{background:rgba(0,0,0,0.04);border:2px solid var(--b);padding:1.25rem 1.5rem;margin:1.5rem 0;border-radius:8px;} .disclosure-t .sec-title-t{margin-bottom:0.75rem;} .disclosure-t ul{margin:0;padding-left:1.25rem;font-family:sans-serif;color:var(--g);line-height:1.65;} .disclosure-t li{margin-bottom:0.5rem;}
.ft-company{margin:0 0 1rem;line-height:1.6;opacity:0.95;} .ft-company a{color:var(--w);}
.disclosure-t{background:rgba(0,0,0,0.04);border-left:4px solid var(--b);padding:1.25rem 1.25rem 1.25rem 1.5rem;margin-top:0;} .disclosure-t p{font-size:0.95rem;line-height:1.6;}
.ft-org{margin:0 0 1rem;font-size:0.8rem;line-height:1.5;opacity:0.95;} .ft-org a{color:var(--w);}
.ft-company{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,0.25);font-size:0.8rem;line-height:1.5;} .ft-company p{margin:0 0 0.35rem;} .ft-company-brief{margin:0 0 0.75rem;font-size:0.8rem;line-height:1.45;} .visually-hidden-t{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);}
.ft-split .ft-split-inner{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;align-items:start;} @media(max-width:600px){.ft-split .ft-split-inner{grid-template-columns:1fr;}} .ft-split .ft-tagline{font-weight:700;margin:0 0 0.5rem;} .ft-split .ft-left .age{margin:0;} .ft-split .ft-right .nav{display:flex;flex-wrap:wrap;gap:0.75rem;margin-bottom:1rem;} .ft-split .ft-right .nav a{text-decoration:none;}
.list-t{margin-top:2rem;}
.item-t{border:2px solid var(--b);padding:1.25rem;margin-bottom:1rem;display:grid;grid-template-columns:90px 1fr 100px;gap:1.25rem;align-items:start;} @media(max-width:600px){.item-t{grid-template-columns:1fr;}}
.item-t img{width:85px;height:42px;object-fit:contain;} .item-t h2{font-size:1.25rem;margin:0 0 0.35rem;letter-spacing:-0.02em;} .item-t p{font-family:sans-serif;font-size:0.95rem;margin:0;color:var(--g);} .item-t .lic{font-size:0.8rem;font-weight:700;} .item-t .rg{font-size:0.75rem;color:var(--g);} .item-t .a18{font-size:0.7rem;color:var(--g);}
.item-t .go a{display:inline-block;padding:0.6rem 1.2rem;background:var(--b);color:var(--w);text-decoration:none;font-family:sans-serif;font-size:0.9rem;font-weight:700;} .item-t .go a:hover{opacity:0.85;}
.reg-t{margin-top:2.5rem;padding:1rem;text-align:center;font-family:sans-serif;font-size:0.95rem;} .reg-t h2{font-family:"Archivo Black",sans-serif;font-size:1.1rem;} .reg-t a{color:var(--b);font-weight:700;}
.ft{background:var(--b);color:var(--w);padding:1.5rem 1rem;margin-top:2rem;font-family:sans-serif;font-size:0.85rem;} .ft .i{max-width:900px;margin:0 auto;} .ft a{color:var(--w);} .ft-org{margin:0 0 1rem;font-size:0.82rem;line-height:1.55;opacity:0.95;border-bottom:1px solid rgba(255,255,255,0.2);padding-bottom:1rem;} .ft-org a{text-decoration:underline;} .ft .reg-logos-t{margin-top:0.75rem;padding:0.75rem 1rem;background:rgba(255,255,255,0.12);border-radius:8px;display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;} .ft .reg-logos-t a{display:inline-flex;align-items:center;} .ft .reg-logos-t img{height:36px;width:auto;max-width:120px;object-fit:contain;vertical-align:middle;} .ft .nav{margin-top:0.5rem;display:flex;flex-wrap:wrap;gap:1rem;}
.pt{font-size:2rem;font-weight:900;letter-spacing:-0.04em;margin-bottom:1rem;} .pb p{font-family:sans-serif;margin:0 0 0.8rem;}
.cook-t{position:fixed;bottom:0;left:0;right:0;background:var(--b);color:var(--w);padding:0.9rem 1rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;z-index:1000;font-family:sans-serif;font-size:0.85rem;} .cook-t.off{display:none;} .cook-t button{background:var(--w);color:var(--b);border:none;padding:0.5rem 1rem;font-weight:700;cursor:pointer;}
.cook-t.cook-bar-dark{border-top:3px solid var(--w);}
.disclaimer-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:1rem;box-sizing:border-box;}
.disclaimer-modal--hidden{display:none!important;}
.disclaimer-modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,0.75);}
.disclaimer-modal__box{position:relative;background:var(--w);color:var(--b);max-width:420px;width:100%;padding:1.75rem;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,0.4);border:2px solid var(--b);}
.disclaimer-modal__title{margin:0 0 0.75rem;font-size:1.35rem;}
.disclaimer-modal__text{margin:0 0 1rem;font-size:0.95rem;line-height:1.5;}
.disclaimer-modal__links{margin:0 0 1.25rem;font-size:0.9rem;} .disclaimer-modal__links a{color:var(--b);text-decoration:underline;}
.disclaimer-modal__btn{display:block;width:100%;padding:0.75rem 1rem;font-size:1rem;font-weight:700;cursor:pointer;background:var(--b);color:var(--w);border:none;border-radius:6px;}
.disclaimer-modal__btn:hover{opacity:0.9;}
@media(prefers-reduced-motion:no-preference){
@keyframes gd-pulse-border{0%,100%{border-color:var(--b);box-shadow:0 2px 12px rgba(0,0,0,0.06);}50%{border-color:var(--g);box-shadow:0 4px 20px rgba(0,0,0,0.12);}}
@keyframes gd-shake{0%,100%{transform:translateX(0);}25%{transform:translateX(-2px);}75%{transform:translateX(2px);}}
@keyframes gd-fade-in{from{opacity:0;}to{opacity:1;}}
.h{animation:gd-pulse-border 3s ease-in-out infinite;}
.h .logo-icon{animation:gd-shake 4s ease-in-out infinite;}
.m{animation:gd-fade-in 0.5s ease-out;}
.hero-col,.item-t{animation:gd-fade-in 0.5s ease-out backwards;}
.hero-col:nth-child(1){animation-delay:0.05s;} .hero-col:nth-child(2){animation-delay:0.15s;}
.item-t{transition:box-shadow 0.3s ease,transform 0.3s ease;}
.item-t:hover{box-shadow:0 8px 32px rgba(0,0,0,0.15);transform:translateY(-2px);}
.item-t .go a{transition:transform 0.2s ease;}
.item-t .go a:hover{transform:scale(1.03);}
}
