
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500;1,600&family=Source+Sans+3:ital,wght@0,300;0,400;0,600;1,300;1,400&family=JetBrains+Mono:wght@400;500&display=swap');
:root{
  --ob-blush:#FDF6F0;--ob-rose:#C87D8A;--ob-rose2:#A85E6A;--ob-rose-lt:#FAEEE8;
  --ob-sage:#5A7A6A;--ob-sage2:#3D5A4A;--ob-sage-lt:#EBF2EE;
  --ob-ink:#2A1F1A;--ob-muted:#7A6A62;--ob-rule:#E8D8D0;--ob-card:#FFFCF9;
  --ob-display:'Playfair Display',Georgia,serif;
  --ob-body:'Source Sans 3',system-ui,sans-serif;
  --ob-mono:'JetBrains Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--ob-blush);color:var(--ob-ink);font-family:var(--ob-body);font-size:15px;line-height:1.7;overflow-x:hidden}
.ob-gate{position:fixed;inset:0;z-index:9999;background:rgba(90,122,106,.95);display:flex;align-items:center;justify-content:center;padding:24px}
.ob-gate-box{background:var(--ob-blush);border:1px solid var(--ob-rose);max-width:400px;width:100%;padding:40px;text-align:center}
.ob-gate-box h2{font-family:var(--ob-display);font-size:26px;font-style:italic;font-weight:500;color:var(--ob-rose2);margin-bottom:8px}
.ob-gate-line{width:32px;height:1px;background:var(--ob-rose);margin:10px auto 14px;opacity:.5}
.ob-gate-box p{font-size:14px;font-weight:300;color:var(--ob-muted);margin-bottom:20px;line-height:1.65}
.ob-gate-check{display:flex;align-items:flex-start;gap:9px;margin-bottom:20px;font-size:14px;text-align:left}
.ob-gate-check input{margin-top:3px;width:14px;height:14px;accent-color:var(--ob-rose);flex-shrink:0}
.ob-btn{background:var(--ob-sage);color:#fff;border:none;padding:12px 24px;font-family:var(--ob-display);font-size:15px;font-style:italic;cursor:pointer;width:100%;margin-bottom:8px;transition:background .2s}
.ob-btn:hover{background:var(--ob-sage2)}
.ob-btn-sec{background:transparent;color:var(--ob-muted);border:1px solid var(--ob-rule);padding:10px 24px;font-size:13px;cursor:pointer;width:100%}
.ob-cookie{position:fixed;bottom:0;left:0;right:0;z-index:8888;background:var(--ob-ink);color:rgba(253,246,240,.55);padding:10px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--ob-mono);font-size:12px}
.ob-cookie a{color:var(--ob-rose)}
.ob-cookie-btn{background:var(--ob-rose);color:#fff;border:none;padding:6px 16px;font-size:12px;font-weight:600;cursor:pointer}
.ob-header{background:var(--ob-blush);border-bottom:1px solid var(--ob-rule);position:sticky;top:0;z-index:100}
.ob-rose-bar{background:var(--ob-rose);height:2px}
.ob-hinner{max-width:1100px;margin:0 auto;padding:0 32px;height:56px;display:flex;align-items:center;justify-content:space-between}
.ob-logo{font-family:var(--ob-display);font-size:22px;font-style:italic;font-weight:500;color:var(--ob-rose2);text-decoration:none;letter-spacing:.5px}
.ob-logo em{color:var(--ob-sage);font-style:normal}
.ob-nav{display:flex;align-items:center;gap:18px}
.ob-nav a{font-family:var(--ob-body);font-size:13px;font-weight:400;color:var(--ob-muted);text-decoration:none;transition:color .2s}
.ob-nav a:hover{color:var(--ob-rose2)}
.ob-pill{border:1px solid var(--ob-rose);color:var(--ob-rose);font-family:var(--ob-mono);font-size:10px;padding:2px 7px;letter-spacing:1px}
.ob-drop{position:relative}
.ob-drop-btn{font-family:var(--ob-body);font-size:13px;color:var(--ob-muted);background:none;border:none;cursor:pointer}
.ob-drop-btn:hover{color:var(--ob-rose2)}
.ob-drop-menu{display:none;position:absolute;top:calc(100% + 4px);right:0;background:var(--ob-blush);border:1px solid var(--ob-rule);min-width:200px;z-index:200;box-shadow:0 4px 16px rgba(200,125,138,.15);overflow:hidden}
.ob-drop-menu a{display:block;padding:10px 18px;font-family:var(--ob-display);font-size:14px;font-style:italic;color:var(--ob-ink);text-decoration:none;border-bottom:1px solid var(--ob-rule)}
.ob-drop-menu a:last-child{border-bottom:none}
.ob-drop-menu a:hover{background:var(--ob-rose);color:#fff}
.ob-drop:hover .ob-drop-menu,.ob-drop.open .ob-drop-menu{display:block}
.ob-burger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px}
.ob-burger span{display:block;width:20px;height:1px;background:var(--ob-rose2)}
.ob-mmenu{display:none;background:var(--ob-blush);border-top:1px solid var(--ob-rule);padding:16px 32px;flex-direction:column}
.ob-mmenu.open{display:flex}
.ob-mmenu a{font-size:14px;color:var(--ob-muted);text-decoration:none;padding:10px 0;border-bottom:1px solid var(--ob-rule)}
.ob-mmenu a:hover{color:var(--ob-rose2)}
/* HERO — airy editorial */
.ob-hero{background:var(--ob-blush);border-bottom:1px solid var(--ob-rule);padding:60px 32px 52px;text-align:center}
.ob-hero-tag{font-family:var(--ob-mono);font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:18px;opacity:.8}
.ob-hero h1{font-family:var(--ob-display);font-size:clamp(26px,4vw,52px);font-style:italic;font-weight:400;color:var(--ob-ink);line-height:1.2;margin-bottom:14px}
.ob-hero h1 em{color:var(--ob-rose2)}
.ob-hero-hairline{display:flex;align-items:center;gap:18px;max-width:420px;margin:0 auto 16px}
.ob-hero-hairline::before,.ob-hero-hairline::after{content:'';flex:1;height:1px;background:var(--ob-rose);opacity:.3}
.ob-hero-hairline span{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;color:var(--ob-rose);opacity:.7}
.ob-hero-lede{font-family:var(--ob-body);font-size:16px;font-weight:300;color:var(--ob-muted);max-width:500px;margin:0 auto 24px;line-height:1.75}
.ob-hero-stats{display:flex;justify-content:center;gap:36px;margin-top:22px;padding-top:18px;border-top:1px solid var(--ob-rule)}
.ob-stat{text-align:center}
.ob-stat-num{font-family:var(--ob-display);font-size:22px;font-style:italic;color:var(--ob-rose2);display:block;line-height:1}
.ob-stat-label{font-family:var(--ob-mono);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--ob-muted);margin-top:4px;display:block}
/* MAIN */
.ob-main{max-width:1100px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 240px;gap:48px}
.ob-content{padding-top:36px}
.ob-sidebar{padding-top:36px}
.ob-sec-tag{font-family:var(--ob-mono);font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:6px}
.ob-sec-title{font-family:var(--ob-display);font-size:22px;font-style:italic;font-weight:400;color:var(--ob-ink);margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid var(--ob-rule)}
/* CARDS — hairline airy */
.ob-cards{display:flex;flex-direction:column;gap:0;margin-bottom:32px}
.ob-card{background:var(--ob-card);padding:18px 0;border-bottom:1px solid var(--ob-rule);display:grid;grid-template-columns:78px 1fr auto;gap:16px;align-items:center;transition:background .15s}
.ob-card:first-child{border-top:1px solid var(--ob-rule)}
.ob-card:hover{background:var(--ob-rose-lt)}
.ob-card-logo{width:78px;height:46px;background:#2D2D2D;border:1px solid var(--ob-rule);display:flex;align-items:center;justify-content:center;padding:5px;box-shadow:0 0 0 1px rgba(0,0,0,.15);}
.ob-card-logo img{object-fit:contain;width:100%;height:100%}
.ob-card-type{font-family:var(--ob-mono);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:3px}
.ob-card-name{font-family:var(--ob-display);font-size:18px;font-style:italic;font-weight:500;color:var(--ob-ink);margin-bottom:4px}
.ob-card-lede{font-size:13px;font-weight:300;color:var(--ob-muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ob-card-meta{font-family:var(--ob-mono);font-size:10px;color:var(--ob-muted);margin-top:5px}
.ob-card-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.ob-tag{font-family:var(--ob-mono);font-size:9px;letter-spacing:1px;text-transform:uppercase;background:var(--ob-sage-lt);color:var(--ob-sage2);padding:2px 6px;border:1px solid rgba(90,122,106,.2)}
.ob-card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px;flex-shrink:0}
.ob-btn-cta{background:var(--ob-rose);color:#fff;border:none;padding:9px 16px;font-family:var(--ob-display);font-size:14px;font-style:italic;cursor:pointer;white-space:nowrap;transition:background .2s}
.ob-btn-cta:hover{background:var(--ob-rose2)}
.ob-review-a{font-family:var(--ob-mono);font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--ob-sage);text-decoration:none;opacity:.7}
.ob-review-a:hover{opacity:1}
.ob-div{display:flex;align-items:center;gap:14px;margin:30px 0}
.ob-div::before,.ob-div::after{content:'';flex:1;height:1px;background:var(--ob-rule)}
.ob-div span{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--ob-muted);white-space:nowrap}
.ob-text p{margin-bottom:13px;font-size:15px;font-weight:300;line-height:1.8;color:rgba(42,31,26,.72)}
.ob-text h3{font-family:var(--ob-display);font-size:18px;font-style:italic;color:var(--ob-rose2);margin:20px 0 9px}
.ob-text a{color:var(--ob-sage)}
.ob-pull{border-left:2px solid var(--ob-rose);padding:12px 18px;margin:20px 0;font-family:var(--ob-display);font-size:18px;font-style:italic;font-weight:400;line-height:1.5;color:var(--ob-rose2)}
.ob-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:28px}
.ob-tile{background:var(--ob-card);border:1px solid var(--ob-rule);padding:18px}
.ob-tile-tag{font-family:var(--ob-mono);font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:7px}
.ob-tile-label{font-family:var(--ob-display);font-size:14px;font-style:italic;color:var(--ob-ink);margin-bottom:7px}
.ob-tile p{font-size:12px;font-weight:300;color:var(--ob-muted);line-height:1.55}
.ob-table{width:100%;border-collapse:collapse;font-size:13px;margin:12px 0 28px}
.ob-table th{background:var(--ob-sage);color:#fff;padding:9px 14px;text-align:left;font-family:var(--ob-mono);font-size:9px;letter-spacing:2px;font-weight:400;text-transform:uppercase}
.ob-table td{padding:10px 14px;border-bottom:1px solid var(--ob-rule)}
.ob-table tr:nth-child(even) td{background:var(--ob-sage-lt)}
.ob-table tr:hover td{background:var(--ob-rose-lt)}
.ob-ok{color:var(--ob-sage);font-weight:600;font-family:var(--ob-mono)}
.ob-lic{background:var(--ob-card);border:1px solid var(--ob-rule);border-left:2px solid var(--ob-rose);padding:16px 20px;margin:12px 0}
.ob-lic h3{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:11px}
.ob-lic-row{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--ob-rule);font-size:14px;font-weight:300}
.ob-lic-row:last-child{border-bottom:none}
.ob-lic-lbl{font-family:var(--ob-mono);font-size:10px;color:var(--ob-muted);letter-spacing:1px;text-transform:uppercase}
.ob-lic-val a{color:var(--ob-sage)}
.ob-notice{background:var(--ob-sage-lt);border:1px solid rgba(90,122,106,.2);border-left:2px solid var(--ob-sage);padding:10px 16px;margin:10px 0;font-size:13px;font-weight:300;color:var(--ob-sage2);line-height:1.6}
.ob-notice a{color:var(--ob-sage2);font-weight:600}
.ob-age-bar{background:var(--ob-ink);color:rgba(253,246,240,.45);padding:9px 14px;margin:11px 0;font-family:var(--ob-mono);font-size:11px;line-height:1.65}
.ob-age-bar strong{color:#fff}
.ob-modal{position:fixed;inset:0;z-index:9000;background:rgba(90,122,106,.92);display:none;align-items:center;justify-content:center;padding:24px}
.ob-modal.open{display:flex}
.ob-modal-box{background:var(--ob-blush);border:1px solid var(--ob-rose);max-width:420px;width:100%;padding:36px;text-align:center}
.ob-modal-tag{font-family:var(--ob-mono);font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:14px}
.ob-modal-box h3{font-family:var(--ob-display);font-size:22px;font-style:italic;color:var(--ob-ink);margin-bottom:12px}
.ob-modal-box p{font-size:14px;font-weight:300;color:var(--ob-muted);margin-bottom:20px;line-height:1.65}
.ob-modal-acts{display:flex;flex-direction:column;gap:9px}
.ob-faq-item{border-bottom:1px solid var(--ob-rule)}
.ob-faq-q{width:100%;background:none;border:none;text-align:left;padding:12px 0;cursor:pointer;font-family:var(--ob-display);font-size:16px;font-style:italic;display:flex;justify-content:space-between;align-items:center;color:var(--ob-ink)}
.ob-faq-q::after{content:'+';font-family:var(--ob-mono);font-size:18px;color:var(--ob-rose);font-style:normal}
.ob-faq-item.open .ob-faq-q::after{content:'-'}
.ob-faq-a{display:none;padding:0 0 12px;font-size:14px;font-weight:300;color:var(--ob-muted);line-height:1.75}
.ob-faq-item.open .ob-faq-a{display:block}
.ob-s-card{background:var(--ob-card);border:1px solid var(--ob-rule);padding:14px;margin-bottom:13px}
.ob-s-card h3{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:10px;padding-bottom:7px;border-bottom:1px solid var(--ob-rule)}
.ob-s-list{list-style:none}
.ob-s-list li{padding:6px 0;border-bottom:1px solid var(--ob-rule);font-family:var(--ob-display);font-size:14px;font-style:italic;font-weight:400}
.ob-s-list li:last-child{border-bottom:none}
.ob-s-list a{color:var(--ob-ink);text-decoration:none}
.ob-s-list a:hover{color:var(--ob-rose2)}
.ob-helpline{background:var(--ob-sage);color:#fff;padding:16px;text-align:center}
.ob-helpline h3{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:7px}
.ob-helpline-num{font-family:var(--ob-mono);font-size:18px;font-weight:600}
.ob-helpline p{font-size:12px;font-weight:300;color:rgba(255,255,255,.6);margin-top:3px}
.ob-footer{background:var(--ob-ink);color:#fff;margin-top:64px}
.ob-footer-rose{background:var(--ob-rose);height:2px}
.ob-footer-inner{max-width:1100px;margin:0 auto;padding:36px 32px 20px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px;margin-bottom:24px}
.ob-footer h4{font-family:var(--ob-mono);font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--ob-rose);margin-bottom:12px}
.ob-footer a{font-family:var(--ob-body);font-weight:300;color:rgba(255,255,255,.4);text-decoration:none;font-size:13px;display:block;margin-bottom:7px}
.ob-footer a:hover{color:var(--ob-rose)}
.ob-footer-wm{font-family:var(--ob-display);font-size:22px;font-style:italic;color:#fff;margin-bottom:7px}
.ob-footer-bottom{max-width:1100px;margin:0 auto;padding:0 32px 20px;border-top:1px solid rgba(255,255,255,.1);padding-top:16px;font-size:12px;font-weight:300;color:rgba(255,255,255,.28);line-height:1.8}
.ob-footer-bottom a{color:rgba(200,125,138,.35);display:inline}
.ob-static{max-width:700px;margin:0 auto;padding:52px 32px}
.ob-static h1{font-family:var(--ob-display);font-size:38px;font-style:italic;font-weight:400;color:var(--ob-rose2);margin-bottom:10px}
.ob-static h2{font-family:var(--ob-display);font-size:20px;font-style:italic;color:var(--ob-sage);margin:24px 0 9px}
.ob-static p{font-size:15px;font-weight:300;margin-bottom:13px;line-height:1.8;color:rgba(42,31,26,.72)}
.ob-static ul{padding-left:18px;margin-bottom:13px}
.ob-static li{font-weight:300;margin-bottom:7px;line-height:1.7}
.ob-static a{color:var(--ob-sage)}
.ob-bc{max-width:1100px;margin:0 auto;padding:12px 32px 0;font-family:var(--ob-mono);font-size:11px;letter-spacing:1px;color:var(--ob-muted)}
.ob-bc a{color:var(--ob-rose);text-decoration:none}
.ob-err{max-width:480px;margin:80px auto;padding:0 32px;text-align:center}
.ob-err-code{font-family:var(--ob-display);font-size:96px;font-style:italic;color:var(--ob-rule);line-height:1;margin-bottom:14px}
.ob-err h2{font-family:var(--ob-display);font-size:26px;font-style:italic;color:var(--ob-rose2);margin-bottom:12px}
.ob-err p{font-weight:300;color:var(--ob-muted);margin-bottom:20px}
@media(max-width:900px){
  .ob-main{grid-template-columns:1fr}
  .ob-footer-inner{grid-template-columns:1fr;gap:24px}
  .ob-three{grid-template-columns:1fr}
  .ob-hero-stats{gap:20px;flex-wrap:wrap}
  .ob-card{grid-template-columns:66px 1fr}
  .ob-card-actions{grid-column:1/-1;flex-direction:row;gap:10px}
}
@media(max-width:640px){
  .ob-nav{display:none}.ob-burger{display:flex}
  .ob-hero{padding:40px 24px 32px}.ob-main{padding:0 24px}
  .ob-card{grid-template-columns:1fr}.ob-card-logo{width:100%;height:36px}
}

/* ── EDITORIAL BLOCK ── */
.ob-editorial{padding:0 0 8px;color:rgba(0,0,0,.78)}
.ob-editorial h2{margin:20px 0 9px;font-size:1.1em}
.ob-editorial p{margin-bottom:12px;line-height:1.78;font-size:15px}
