/* brancastle.com.ro — “Carpathian Gothic” theme */
:root{
  --ink:#221418;
  --ink-soft:#4b3a3f;
  --paper:#faf6ec;
  --parchment:#f2ead8;
  --line:#e0d5bd;
  --crimson:#8a1c2b;
  --crimson-d:#63121f;
  --gold:#b98a2f;
  --gold-soft:#e9d9ae;
  --night:#1b1114;
  --night-2:#2a181d;
  --shadow:0 10px 30px rgba(34,20,24,.16);
  --r:14px;
  --wrap:1180px;
  --font-d:"Cinzel",serif;
  --font-b:"Source Sans 3","Segoe UI",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);color:var(--ink);background:var(--paper);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--crimson)}
a:hover{color:var(--crimson-d)}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
h1,h2,h3,.logo-tx b{font-family:var(--font-d);font-weight:600;line-height:1.2;color:var(--ink)}
h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:2.2em 0 .6em;position:relative;padding-bottom:.35em}
h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:3px;background:linear-gradient(90deg,var(--crimson),var(--gold));border-radius:2px}
[dir=rtl] h2::after{left:auto;right:0}
h3{font-size:1.17rem;margin:1.6em 0 .5em}
p{margin:.85em 0}
ul,ol{margin:.85em 0;padding-inline-start:1.4em}
li{margin:.35em 0}

/* buttons */
.btn{display:inline-block;padding:.72em 1.5em;border-radius:10px;font-weight:700;text-decoration:none;font-size:1rem;letter-spacing:.02em;transition:.18s;border:2px solid transparent;text-align:center}
.btn-primary{background:linear-gradient(135deg,var(--crimson),var(--crimson-d));color:#fff;box-shadow:0 6px 18px rgba(138,28,43,.35)}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(138,28,43,.45);color:#fff}
.btn-ghost{border-color:rgba(255,255,255,.55);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
.btn-lg{padding:.9em 2em;font-size:1.07rem}

/* header */
.site-head{position:sticky;top:0;z-index:50;background:rgba(27,17,20,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(185,138,47,.25)}
.head-in{display:flex;align-items:center;gap:22px;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--gold-soft)}
.logo-ico{width:34px;height:34px;flex:none}
.logo-tx{display:flex;flex-direction:column;line-height:1.1}
.logo-tx b{font-size:1.02rem;letter-spacing:.06em;color:#f4ecd9}
.logo-tx i{font-style:normal;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.nav{margin-inline-start:auto}
.nav-list{display:flex;list-style:none;gap:4px;align-items:center}
.nav-list>li>a,.sub-btn{display:block;padding:.55em .8em;color:#e9ddc8;text-decoration:none;font-weight:600;font-size:.95rem;border-radius:8px;background:none;border:0;cursor:pointer;font-family:var(--font-b)}
.nav-list>li>a:hover,.sub-btn:hover,.nav-list>li>a.on{color:#fff;background:rgba(185,138,47,.18)}
.has-sub{position:relative}
.sub{position:absolute;top:100%;inset-inline-start:0;background:var(--night-2);min-width:230px;border-radius:10px;list-style:none;padding:8px;box-shadow:var(--shadow);display:none;border:1px solid rgba(185,138,47,.25)}
.has-sub.open .sub,.has-sub:hover .sub{display:block}
.sub a{display:block;padding:.5em .8em;color:#e9ddc8;text-decoration:none;border-radius:7px;font-size:.93rem}
.sub a:hover{background:rgba(185,138,47,.18);color:#fff}
.head-right{display:flex;align-items:center;gap:12px}
.head-cta{font-size:.92rem;padding:.6em 1.2em;white-space:nowrap}

/* language switcher */
.lang{position:relative}
.lang-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid rgba(233,221,200,.35);color:#e9ddc8;padding:.45em .7em;border-radius:8px;cursor:pointer;font-size:.88rem;font-family:var(--font-b);white-space:nowrap}
.lang-btn:hover{border-color:var(--gold)}
.car{font-size:.7em;opacity:.7}
.lang-list{position:absolute;top:calc(100% + 6px);inset-inline-end:0;background:var(--night-2);border:1px solid rgba(185,138,47,.25);border-radius:10px;list-style:none;padding:8px;display:none;grid-template-columns:1fr 1fr;gap:2px;min-width:270px;max-height:60vh;overflow:auto;box-shadow:var(--shadow);z-index:60}
.lang.open .lang-list{display:grid}
.lang-list a{display:block;padding:.4em .7em;color:#e9ddc8;text-decoration:none;border-radius:6px;font-size:.88rem;white-space:nowrap}
.lang-list a:hover{background:rgba(185,138,47,.18);color:#fff}
.lang-list .on a{color:var(--gold);font-weight:700}

/* burger */
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.burger span{display:block;width:24px;height:2px;background:#e9ddc8;margin:5px 0;transition:.2s}
.m-nav{display:none}

/* hero */
.hero{position:relative;background:var(--night);color:#fff;overflow:hidden}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.55}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(27,17,20,.55) 0%,rgba(27,17,20,.25) 45%,rgba(27,17,20,.88) 100%)}
.hero-in{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:44px;padding:64px 20px 72px;align-items:center}
.hero-sub .hero-in{padding:48px 20px 56px}
.kicker{font-size:.85rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:.7em}
.hero h1{color:#fff;font-size:clamp(1.7rem,3.6vw,2.7rem);text-shadow:0 2px 18px rgba(0,0,0,.5)}
.hero-lead{font-size:1.1rem;color:#efe6d3;max-width:56ch;margin:.9em 0 0}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:1.4em}
.hero-facts{display:flex;gap:26px;list-style:none;margin-top:1.8em;padding:0;flex-wrap:wrap}
.hero-facts li{display:flex;flex-direction:column;gap:2px}
.hero-facts b{font-family:var(--font-d);font-size:1.15rem;color:var(--gold-soft)}
.hero-facts span{font-size:.8rem;color:#cbbfa8;letter-spacing:.04em;text-transform:uppercase}
.hero-widget{min-width:0}
.widget-shell{background:#fff;border-radius:var(--r);padding:12px;box-shadow:var(--shadow);color:var(--ink)}
.widget-shell.stay22{padding:6px}

/* disclaimer chip */
.disc-chip{position:relative;display:inline-flex;align-items:center;gap:6px;margin-top:1.6em;font-size:.72rem;color:#b8a98d;border:1px dashed rgba(185,138,47,.45);padding:.3em .8em;border-radius:99px;cursor:help;letter-spacing:.05em}
.disc-chip::before{content:"ⓘ";color:var(--gold)}
.disc-pop{position:absolute;bottom:calc(100% + 10px);inset-inline-start:0;width:290px;background:#fff;color:var(--ink);padding:12px 14px;border-radius:10px;box-shadow:var(--shadow);font-size:.82rem;line-height:1.5;display:none;z-index:5;letter-spacing:0}
.disc-chip:hover .disc-pop,.disc-chip:focus .disc-pop,.disc-chip:focus-within .disc-pop{display:block}

/* products strip */
.prods{padding:46px 0 8px}
.prods-h{margin:0 0 .2em;font-size:1.45rem}
.prods-sub{color:var(--ink-soft);margin:0 0 1.2em;font-size:.95rem}
.prod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.prod{display:flex;flex-direction:column;background:#fff;border-radius:var(--r);overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 4px 14px rgba(34,20,24,.08);transition:.18s;border:1px solid var(--line)}
.prod:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.prod-img{aspect-ratio:16/9;overflow:hidden;display:block}
.prod-img img{width:100%;height:100%;object-fit:cover;transition:.3s}
.prod:hover .prod-img img{transform:scale(1.05)}
.prod-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.prod-badge{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700}
.prod-name{font-weight:700;line-height:1.35;font-size:.98rem;flex:1;color:var(--ink)}
.prod-cta{color:var(--crimson);font-weight:700;font-size:.9rem}

/* article */
.main-grid{padding:26px 20px 10px}
.article{max-width:820px}
.article>p:first-child{font-size:1.06rem}
.tbl-wrap{overflow-x:auto;margin:1.2em 0;border-radius:12px;box-shadow:0 3px 12px rgba(34,20,24,.08);border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;background:#fff;font-size:.95rem;min-width:480px}
th{background:var(--night);color:var(--gold-soft);text-align:start;padding:.75em 1em;font-family:var(--font-d);font-weight:600;font-size:.88rem;letter-spacing:.05em}
td{padding:.7em 1em;border-top:1px solid var(--line);vertical-align:top}
tbody tr:nth-child(even){background:var(--parchment)}
.tip{background:linear-gradient(135deg,#fdf8ec,#f6ecd2);border-inline-start:4px solid var(--gold);border-radius:10px;padding:16px 20px;margin:1.4em 0;box-shadow:0 3px 10px rgba(34,20,24,.06)}
.tip-t{display:block;color:var(--crimson-d);font-family:var(--font-d);margin-bottom:.3em;letter-spacing:.03em}
.tip p{margin:.2em 0}
.warn{background:#fbeeee;border-inline-start:4px solid var(--crimson);border-radius:10px;padding:14px 18px;margin:1.4em 0}
.warn p{margin:.2em 0}
.mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:1.4em 0}
.mini-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px;box-shadow:0 3px 10px rgba(34,20,24,.06)}
.mini-card h3{margin:0 0 .4em;font-size:1.03rem}
.mini-card p{margin:0;font-size:.93rem;color:var(--ink-soft)}
.content-img{margin:1.6em 0}
.content-img img{border-radius:var(--r);box-shadow:var(--shadow)}
.content-img figcaption{font-size:.85rem;color:var(--ink-soft);margin-top:.6em;font-style:italic}
.cta-inline{margin:1.6em 0}
.src-note{font-size:.83rem;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:1em;margin-top:2.5em}

/* FAQ */
.faq{margin-top:2.5em}
.faq-i{background:#fff;border:1px solid var(--line);border-radius:12px;margin:.7em 0;overflow:hidden}
.faq-i summary{padding:16px 20px;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-inline-end:44px}
.faq-i summary::-webkit-details-marker{display:none}
.faq-i summary::after{content:"+";position:absolute;inset-inline-end:18px;top:50%;transform:translateY(-50%);font-size:1.4rem;color:var(--gold);font-weight:400}
.faq-i[open] summary::after{content:"–"}
.faq-i[open] summary{color:var(--crimson-d)}
.faq-a{padding:0 20px 16px;color:var(--ink-soft)}

/* explore / related */
.explore{padding:30px 0 10px}
.ex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;margin-top:1.2em}
.ex-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px;text-decoration:none;color:var(--ink);transition:.18s;box-shadow:0 3px 10px rgba(34,20,24,.06);display:flex;flex-direction:column;gap:8px}
.ex-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--gold)}
.ex-card h3{margin:0;font-size:1.05rem}
.ex-card p{margin:0;font-size:.9rem;color:var(--ink-soft);flex:1}
.ex-more{color:var(--crimson);font-weight:700;font-size:.9rem}
.rel{margin:34px 0 8px}
.rel h2{font-size:1.2rem;margin:0 0 .8em}
.rel-row{display:flex;flex-wrap:wrap;gap:10px}
.rel-pill{background:#fff;border:1px solid var(--line);padding:.55em 1.1em;border-radius:99px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.92rem;transition:.15s}
.rel-pill:hover{border-color:var(--crimson);color:var(--crimson)}

/* big cta */
.big-cta{background:linear-gradient(135deg,var(--night),var(--night-2));border-radius:var(--r);padding:44px 34px;text-align:center;color:#fff;margin:44px 0 60px;position:relative;overflow:hidden}
.big-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(185,138,47,.22),transparent 60%)}
.big-cta h2{color:#f4ecd9;margin:0 0 .4em;padding:0}
.big-cta h2::after{display:none}
.big-cta p{color:#cbbfa8;max-width:60ch;margin:0 auto 1.4em}
.big-cta .btn{position:relative}

/* footer */
.site-foot{background:var(--night);color:#cbbfa8;margin-top:20px}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding:54px 20px 30px}
.foot-col h4{color:var(--gold);font-family:var(--font-d);letter-spacing:.08em;font-size:.92rem;margin-bottom:.9em;text-transform:uppercase}
.foot-col ul{list-style:none;padding:0;margin:0}
.foot-col li{margin:.45em 0}
.foot-col a{color:#cbbfa8;text-decoration:none;font-size:.93rem}
.foot-col a:hover{color:#fff}
.foot-desc{font-size:.9rem;margin:1em 0 .6em;max-width:34ch}
.foot-mail a{color:var(--gold-soft)}
.foot-lang-h{margin-top:1.6em}
.site-foot .lang-btn{border-color:rgba(203,191,168,.4);color:#cbbfa8}
.site-foot .lang-list{bottom:calc(100% + 6px);top:auto}
.foot-disc{border-top:1px solid rgba(203,191,168,.18);padding-top:20px;padding-bottom:8px}
.foot-disc p{font-size:.8rem;line-height:1.6;color:#9d907a;max-width:100ch}
.foot-disc a{color:#cbbfa8}
.foot-bar{padding-top:8px;padding-bottom:26px}
.foot-bar p{font-size:.78rem;color:#7d7260}

/* responsive */
@media (max-width:1020px){
  .nav{display:none}
  .head-cta{display:none}
  .burger{display:block}
  .m-nav{display:none;background:var(--night-2);border-top:1px solid rgba(185,138,47,.25);padding:16px 20px 22px}
  .m-nav.open{display:block}
  .m-nav ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-bottom:14px}
  .m-nav a{display:block;padding:.55em .6em;color:#e9ddc8;text-decoration:none;border-radius:7px;font-size:.95rem}
  .m-nav a:hover{background:rgba(185,138,47,.18)}
  .m-nav .btn{width:100%}
  .hero-in{grid-template-columns:1fr;gap:30px;padding:44px 20px 52px}
}
@media (max-width:640px){
  body{font-size:16px}
  .head-in{height:60px;gap:10px}
  .logo-tx i{display:none}
  .lang-btn{padding:.4em .5em;font-size:.8rem}
  .hero-facts{gap:18px}
  .foot-grid{grid-template-columns:1fr;gap:28px;padding-top:40px}
  .m-nav ul{grid-template-columns:1fr}
  .big-cta{padding:34px 20px}
  .prod-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:460px){
  .prod-grid{grid-template-columns:1fr}
  .hero-actions .btn{width:100%}
}
