/**
 * Broholmerselskabet – Modern layer
 * Loaded AFTER shared.css (or a page's inline base styles) on every content page.
 * Brings the sub pages in line with the redesigned front page: golden-brown
 * header with a larger ringed logo, dark hero with a soft wave into the content,
 * rounded cards, calmer typography and gentle scroll animations.
 */

:root{
  --nav-h:74px;
  --radius:14px;
  --radius-sm:8px;
  --card-shadow:0 10px 30px rgba(61,43,20,.07);
  --card-shadow-hover:0 18px 42px rgba(61,43,20,.14);
  --wave-cream:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0,60 H1440 V40 Q720,4 0,40 Z' fill='%23f5f0e8'/%3E%3C/svg%3E");
  --wave-cream-top:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 60' preserveAspectRatio='none'%3E%3Cpath d='M0,0 H1440 V20 Q720,56 0,20 Z' fill='%23f5f0e8'/%3E%3C/svg%3E");
}

/* ── TOP STRIP (DKK/FCI) – injected by shared.js ── */
.brs-topbar{background:var(--soil);color:rgba(245,240,232,.75);font-size:.74rem;letter-spacing:.04em;border-bottom:1px solid rgba(255,255,255,.08);}
.brs-topbar-in{max-width:1200px;margin:0 auto;padding:.32rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.brs-topbar-badges{display:flex;align-items:center;gap:.55rem;}
.brs-topbar-badges .lbl{font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,240,232,.6);}
.brs-topbar-badges img{height:24px;width:24px;background:#fff;border-radius:50%;padding:2px;object-fit:contain;display:block;transition:transform .2s;}
.brs-topbar-badges a:hover img{transform:translateY(-1px);}

/* ── HEADER ── */
.site-header{background:var(--bark);border-bottom:1px solid rgba(184,137,42,.35);box-shadow:0 2px 16px rgba(61,43,20,.25);transition:box-shadow .25s;}
.site-header.scrolled{box-shadow:0 6px 24px rgba(30,20,8,.38);}
.header-inner{height:var(--nav-h);max-width:1340px;}
.logo{gap:.8rem;}
.logo-paw{width:56px;height:56px;background:#fff;border:2px solid var(--gold);padding:3px;box-shadow:0 3px 12px rgba(0,0,0,.22);}
.logo-text{font-size:1.2rem;}
.desktop-nav{gap:.15rem;}
.desktop-nav a,.nav-drop-btn{text-transform:none;letter-spacing:.01em;font-size:.84rem;border-radius:6px;padding:.42rem .5rem;}
.desktop-nav a:hover,.nav-drop-btn:hover{background:rgba(255,255,255,.1);color:var(--gold-light);}
.btn-nav-portal{border-radius:6px!important;border-color:rgba(255,255,255,.4)!important;background:transparent!important;margin-left:.35rem;}
.btn-nav-portal:hover{background:rgba(255,255,255,.12)!important;}
.btn-nav-join{border-radius:6px!important;color:#fff!important;box-shadow:0 2px 8px rgba(0,0,0,.15);}
.btn-nav-join:hover{color:var(--soil)!important;transform:translateY(-1px);}
.lang-btn{border-radius:6px;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25);}

/* dropdowns: rounded, airy, fade-in */
.nav-drop-menu{border-radius:10px;padding:.35rem 0;margin-top:8px;box-shadow:0 14px 34px rgba(0,0,0,.32);min-width:235px;}
.nav-dropdown::after{height:12px;}
.nav-drop-menu a{border-bottom:none;padding:.5rem 1.05rem;}
.nav-dropdown:hover .nav-drop-menu,.nav-dropdown:focus-within .nav-drop-menu{animation:brsDrop .16s ease-out;}
@keyframes brsDrop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.lang-menu{border-radius:10px;}

/* mobile drawer */
.hamburger span{background:var(--cream);}
.mobile-drawer{background:var(--soil);}
.mobile-drawer a{border-bottom-color:rgba(255,255,255,.07);}

/* ── PAGE HERO (dark + light variants share the same premium look) ── */
.page-hero,.page-hero-light,.hr-hero{
  position:relative;overflow:hidden;
  padding-bottom:5.2rem!important;
  background:linear-gradient(160deg,var(--soil) 0%,var(--navy) 62%,#111929 100%)!important;
  border-bottom:none!important;
}
.page-hero::before,.page-hero-light::before,.hr-hero::before{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 55% 90% at 85% 20%,rgba(212,169,62,.16) 0%,transparent 65%),
             radial-gradient(ellipse 40% 60% at 5% 100%,rgba(212,169,62,.08) 0%,transparent 70%);
}
.page-hero::after,.page-hero-light::after,.hr-hero::after{
  content:'';position:absolute;left:0;right:0;bottom:-1px;height:56px;pointer-events:none;
  background:var(--wave-cream) center/100% 100% no-repeat;
}
.page-hero>*,.page-hero-light>*,.hr-hero>*{position:relative;z-index:2;}
.page-hero h1,.page-hero-light h1{text-shadow:0 2px 18px rgba(0,0,0,.25);letter-spacing:-.005em;}
.page-hero-light{padding-top:3.5rem!important;}
.page-hero-light h1{color:var(--cream);font-size:clamp(1.9rem,4.2vw,2.9rem);line-height:1.12;}
.page-hero-light .pg-tag{color:var(--gold-light);}
.page-hero-light .breadcrumb,.page-hero .breadcrumb{color:rgba(245,240,232,.6);}

/* ── CONTENT ── */
.page-content{padding:2.75rem 1.25rem 5rem;}
.page-inner{max-width:880px;overflow-wrap:break-word;}
.page-content a{overflow-wrap:anywhere;}
.breadcrumb{font-size:.78rem;}

.prose h2{position:relative;margin:2.6rem 0 .9rem;}
.prose h2::after{content:'';display:block;width:44px;height:3px;border-radius:2px;background:var(--gold);margin-top:.55rem;}
.prose h3{margin:1.7rem 0 .5rem;}
.prose p,.prose li{font-size:1rem;line-height:1.82;color:#4a3720;}
.prose .lead{font-size:1.15rem;line-height:1.85;color:var(--bark);border-left:3px solid var(--gold);padding-left:1.1rem;}
.prose a:not(.btn-link):not(.btn-link-ghost):not(.related-link){color:var(--bark);font-weight:600;text-decoration:underline;text-decoration-color:rgba(184,137,42,.55);text-underline-offset:3px;transition:color .15s;}
.prose a:not(.btn-link):not(.btn-link-ghost):not(.related-link):hover{color:var(--gold);}
.prose li::marker{color:var(--gold);}
.prose img{border-radius:var(--radius);box-shadow:var(--card-shadow);}
.prose blockquote{border-left:3px solid var(--gold);background:#fff;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:.9rem 1.2rem;margin:1.5rem 0;font-style:italic;color:var(--bark);box-shadow:var(--card-shadow);}

.highlight-box{background:linear-gradient(135deg,#fff 0%,var(--parchment) 140%);border:1px solid rgba(184,137,42,.22);border-left:4px solid var(--gold);border-radius:var(--radius-sm) var(--radius) var(--radius) var(--radius-sm);padding:1.2rem 1.4rem;box-shadow:var(--card-shadow);}

.info-grid{gap:1.1rem;}
.info-card{background:#fff;border:1px solid rgba(107,79,46,.12);border-radius:var(--radius);padding:1.4rem 1.35rem;box-shadow:var(--card-shadow);transition:transform .2s,box-shadow .2s,border-color .2s;}
.info-card:hover{transform:translateY(-4px);box-shadow:var(--card-shadow-hover);border-color:rgba(184,137,42,.35);}
.info-card strong{font-size:1.04rem;color:var(--soil);}

.data-table{border-collapse:separate;border-spacing:0;background:#fff;border:1px solid rgba(107,79,46,.14);border-radius:var(--radius);overflow:hidden;box-shadow:var(--card-shadow);}
.data-table th{background:var(--parchment);}
.data-table tr:last-child td{border-bottom:none;}

.btn-link,.btn-link-ghost{border-radius:var(--radius-sm);text-transform:none;letter-spacing:.01em;font-size:.9rem;padding:.72rem 1.45rem;}
.btn-link{color:#fff;box-shadow:0 4px 14px rgba(184,137,42,.3);}
.btn-link:hover{color:var(--soil);box-shadow:0 8px 20px rgba(184,137,42,.35);}
.btn-link-ghost{background:#fff;}

.related-box{background:#fff;border:1px solid rgba(107,79,46,.12);border-radius:var(--radius);padding:1.4rem 1.6rem;box-shadow:var(--card-shadow);}
.related-link{border-radius:999px;padding:.4rem .95rem;background:var(--cream);}
.related-link:hover{background:var(--gold);border-color:var(--gold);color:#fff;}

/* ── FOOTER ── */
.site-footer,footer#kontakt{position:relative;overflow:hidden;padding-top:5.2rem;}
.site-footer::before,footer#kontakt::before{content:'';position:absolute;left:0;right:0;top:-1px;height:56px;pointer-events:none;background:var(--wave-cream-top) center/100% 100% no-repeat;}
.site-footer .footer-inner,footer#kontakt .footer-inner{position:relative;z-index:2;}
.site-footer .logo-paw{background:#fff;padding:2px;}

/* ── BACK TO TOP (injected by shared.js) ── */
.brs-totop{position:fixed;right:1.25rem;bottom:1.25rem;z-index:150;width:46px;height:46px;border-radius:50%;border:none;cursor:pointer;background:var(--gold);color:#fff;font-size:1.2rem;box-shadow:0 8px 22px rgba(61,43,20,.3);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .25s,transform .25s,background .2s;}
.brs-totop.show{opacity:1;transform:none;pointer-events:auto;}
.brs-totop:hover{background:var(--gold-light);color:var(--soil);}

/* ── SCROLL REVEAL (classes added by shared.js, so content stays visible without JS) ── */
.brs-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease;}
.brs-reveal.in{opacity:1;transform:none;}
@media print{
  .brs-reveal{opacity:1!important;transform:none!important;}
  .brs-topbar,.brs-totop{display:none!important;}
}
@media (prefers-reduced-motion:reduce){
  .brs-reveal{opacity:1;transform:none;transition:none;}
  .nav-dropdown:hover .nav-drop-menu{animation:none;}
  html{scroll-behavior:auto;}
}

/* ── RESPONSIVE ── */
/* Between drawer and wide desktop: tighten the menu so it always fits on one line */
@media (min-width:1181px) and (max-width:1380px){
  .desktop-nav a,.nav-drop-btn{padding:.42rem .4rem;font-size:.8rem;}
  .logo-text{font-size:1.1rem;}
}
/* The full menu needs ~1180px; below that use the drawer so nothing gets clipped */
@media (max-width:1180px){
  .desktop-nav>#dynamicDesktopNav,.desktop-nav>.btn-nav-portal,.desktop-nav>.user-menu,.desktop-nav>#langPickerDesktop{display:none!important;}
  .hamburger{display:flex;}
  .mobile-drawer{display:block;}
}
@media (max-width:900px){
  :root{--nav-h:64px;}
  .logo-paw{width:44px;height:44px;}
  .logo-text{font-size:1.02rem;}
  .brs-topbar-in>span{display:none;}
  .brs-topbar-in{justify-content:flex-end;}
}
@media (max-width:600px){
  .page-hero,.page-hero-light{padding-bottom:4.2rem!important;}
  .hr-hero{padding-bottom:4.2rem!important;}
  .page-hero::after,.page-hero-light::after,.hr-hero::after,.site-footer::before,footer#kontakt::before{height:36px;}
  .site-footer,footer#kontakt{padding-top:3.8rem;}
  .page-content{padding:2rem 1rem 4rem;}
  .prose p,.prose li{font-size:.98rem;}
  /* wide tables scroll inside their own rounded box instead of pushing the page sideways */
  .data-table,.prose table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .data-table th,.data-table td{padding:.55rem .7rem;font-size:.82rem;}
  /* hunderegister search filters: never wider than the screen */
  .hr-fg input,.hr-fg select{min-width:0;width:100%;}
  .brs-totop{right:.9rem;bottom:.9rem;width:42px;height:42px;}
}
@media (max-width:420px){
  .hr-search{grid-template-columns:1fr!important;}
  .header-inner{padding:0 .85rem;}
  .logo{gap:.5rem;}
  .logo-paw{width:38px;height:38px;padding:2px;}
  .logo-text{font-size:.92rem;}
  .logo-sub{font-size:.5rem;letter-spacing:.1em;}
  .btn-nav-join{padding:.4rem .6rem!important;font-size:.72rem!important;}
}
@media (max-width:350px){
  .btn-nav-join{display:none!important;}
}
