/* Benett Atelier — shared Divi 5 design system */
:root { --ba-ink:#0f0f10; --ba-ink-soft:#181719; --ba-gold:#c7a27c; --ba-gold-light:#dbc09f; --ba-cream:#f7f2ec; --ba-beige:#e8ddd1; --ba-pink:#ebced6; --ba-paper:#fffdf9; --ba-copy:#2d2a26; --ba-light:#f5f0ea; --ba-line:rgba(199,162,124,.25); --ba-display:'Cormorant Garamond',Georgia,serif; --ba-sans:Montserrat,Arial,sans-serif; }
html { scroll-behavior:smooth; }
body { background:var(--ba-cream); color:var(--ba-copy); }
.ba-container { width:min(90%,1400px); margin:0 auto; }
.ba-services-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin-top:54px; }
.ba-about-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(48px,9vw,145px); align-items:center; }
.ba-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin:40px 0; }
.ba-portfolio-grid { display:grid; grid-template-columns:1.05fr .95fr 1fr; gap:24px; margin-top:55px; }
.ba-products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; margin-top:52px; }
.ba-footer-grid { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:28px; }
.ba-section { padding:clamp(72px,9vw,140px) 0; }
.ba-eyebrow { color:var(--ba-gold); display:block; font:600 11px/1.2 var(--ba-sans); letter-spacing:.32em; text-transform:uppercase; margin-bottom:22px; }
.ba-title { font:500 clamp(42px,5.7vw,86px)/.98 var(--ba-display); letter-spacing:-.035em; margin:0 0 24px; }
.ba-title--light { color:var(--ba-light); }
.ba-copy { font:400 16px/1.9 var(--ba-sans); max-width:560px; }
.ba-button, .et_pb_button.ba-button { border:1px solid var(--ba-gold)!important; border-radius:0!important; box-shadow:none!important; color:var(--ba-ink)!important; background:var(--ba-gold)!important; display:inline-block; font:600 11px/1.2 var(--ba-sans)!important; letter-spacing:.16em; padding:17px 28px!important; text-decoration:none; text-transform:uppercase; transition:all .28s ease; }
.ba-button:hover { background:transparent!important; color:var(--ba-gold)!important; transform:translateY(-3px); }
.ba-button--ghost, .et_pb_button.ba-button--ghost { background:transparent!important; color:var(--ba-light)!important; }
.ba-button--ghost:hover { background:var(--ba-gold)!important; color:var(--ba-ink)!important; }
.ba-hero { background:var(--ba-ink); min-height:calc(100vh - 80px); display:flex; align-items:center; overflow:hidden; padding:clamp(90px,11vw,155px) 0 clamp(70px,8vw,120px); }
.ba-hero__media { height:min(68vw,760px); min-height:500px; overflow:hidden; position:relative; border-radius:180px 180px 8px 8px; box-shadow:0 40px 80px rgba(0,0,0,.35); }
.ba-hero__media img, .ba-image img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.ba-hero__media:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.25)); }
.ba-hero__media:hover img, .ba-card:hover img { transform:scale(1.055); }
.ba-hero__features { border-top:1px solid var(--ba-line); display:grid; gap:0; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:44px; }
.ba-hero__features span { color:#d7c7b5; border-bottom:1px solid var(--ba-line); font:500 11px/1.4 var(--ba-sans); letter-spacing:.08em; padding:16px 10px 16px 0; text-transform:uppercase; }
.ba-services { background:var(--ba-cream); }
.ba-card { background:var(--ba-paper); overflow:hidden; position:relative; }
.ba-card__image { height:430px; overflow:hidden; }
.ba-card__image img { width:100%; height:100%; object-fit:cover; transition:transform .7s ease; }
.ba-card__body { padding:26px 24px 30px; }
.ba-card__number { color:var(--ba-gold); font:600 10px var(--ba-sans); letter-spacing:.18em; }
.ba-card h3 { font:500 34px/1.05 var(--ba-display); margin:13px 0 10px; }
.ba-card a { color:var(--ba-copy); text-decoration:none; }
.ba-card a:after { content:' →'; color:var(--ba-gold); }
.ba-about { background:var(--ba-beige); }
.ba-image { height:640px; overflow:hidden; }
.ba-stat { border-top:1px solid rgba(45,42,38,.22); padding-top:18px; }
.ba-stat strong { display:block; font:500 52px/1 var(--ba-display); color:var(--ba-gold); }
.ba-stat span { font:600 10px/1.3 var(--ba-sans); letter-spacing:.13em; text-transform:uppercase; }
.ba-portfolio { background:var(--ba-ink); }
.ba-portfolio .ba-card { background:transparent; color:var(--ba-light); }
.ba-portfolio .ba-card__image { height:510px; }
.ba-portfolio .ba-card__body { padding-left:0; }
.ba-portfolio .ba-card h3, .ba-portfolio .ba-card a { color:var(--ba-light); }
.ba-shop { background:var(--ba-cream); }
.ba-product { background:var(--ba-paper); padding-bottom:22px; }
.ba-product__image { display:block; height:390px; overflow:hidden; }
.ba-product__image img { height:100%; width:100%; object-fit:cover; transition:transform .6s ease; }
.ba-product:hover img { transform:scale(1.05); }
.ba-product h3 { font:500 27px/1.1 var(--ba-display); margin:18px 18px 8px; }
.ba-product p { color:var(--ba-gold); font:600 11px var(--ba-sans); letter-spacing:.13em; margin:0 18px; }
.ba-cta { background:var(--ba-pink); text-align:center; }
.ba-cta .ba-copy { margin:0 auto 32px; }
.ba-footer { background:var(--ba-ink); color:var(--ba-light); padding:72px 0 28px; }
.ba-footer__brand { font:500 48px/.8 var(--ba-display); letter-spacing:.03em; }
.ba-footer a { color:#d7c7b5; font:500 11px/1.7 var(--ba-sans); letter-spacing:.1em; text-decoration:none; text-transform:uppercase; }
.ba-footer a:hover { color:var(--ba-gold); }
.ba-footer__bottom { border-top:1px solid var(--ba-line); color:#9e978f; font:400 10px var(--ba-sans); letter-spacing:.08em; margin-top:52px; padding-top:22px; text-transform:uppercase; }
.ba-header { background:rgba(15,15,16,.94); border-bottom:1px solid var(--ba-line); backdrop-filter:blur(12px); }
.ba-header__inner { align-items:center; display:flex; justify-content:space-between; min-height:88px; }
.ba-header__logo { color:var(--ba-light); font:500 31px/.9 var(--ba-display); letter-spacing:.04em; text-decoration:none; }
.ba-header__logo em { color:var(--ba-gold); font-weight:400; }
.ba-header nav { align-items:center; display:flex; gap:clamp(13px,2vw,32px); }
.ba-header nav a,.ba-header__cart { color:var(--ba-light); font:600 10px/1 var(--ba-sans); letter-spacing:.13em; text-decoration:none; text-transform:uppercase; transition:color .2s ease; }
.ba-header nav a:hover,.ba-header__cart:hover { color:var(--ba-gold); }
.ba-header .et-menu-nav>ul>li>a { color:var(--ba-light)!important; font:500 11px/1.2 var(--ba-sans)!important; letter-spacing:.14em; text-transform:uppercase; }
.ba-header .et-menu-nav>ul>li>a:hover, .ba-header .current-menu-item>a { color:var(--ba-gold)!important; opacity:1!important; }
@media (max-width:980px) { .ba-hero { min-height:auto; } .ba-hero__media { height:580px; margin-top:42px; } .ba-image { height:520px; } .ba-card__image { height:360px; } .ba-services-grid,.ba-products { grid-template-columns:repeat(2,1fr); } .ba-about-grid,.ba-footer-grid { grid-template-columns:1fr; } .ba-portfolio-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:600px) { .ba-services-grid,.ba-products,.ba-portfolio-grid,.ba-stats { grid-template-columns:1fr; } }
@media (max-width:760px) { .ba-header nav { display:none; } }
@media (max-width:479px) { .ba-title { font-size:48px; } .ba-hero__media { min-height:400px; height:440px; border-radius:110px 110px 6px 6px; } .ba-hero__features { grid-template-columns:1fr; } .ba-button { margin-bottom:12px; } }
