/* Craffenheim Rottweilers — deep Nordic navy, steel blue and chrome silver */
:root{
  --ink:#0b1628; --navy:#10223f; --navy-2:#173156; --steel:#2a5c94; --steel-hi:#3f7cbf; --ice:#e9eef4; --mist:#f5f7fa;
  --silver:#c3cad3; --silver-dk:#8a95a3; --text:#1c2633; --muted:#5a6676;
  --chrome:linear-gradient(135deg,#fdfdfe 0%,#c6ccd5 22%,#f1f3f6 45%,#8f99a7 70%,#e3e7ec 100%);
  --chrome-text:linear-gradient(180deg,#ffffff 0%,#dfe4ea 40%,#9aa5b2 55%,#e8ecf1 75%,#bfc7d1 100%);
  --radius:14px; --shadow:0 18px 40px -18px rgba(11,22,40,.45);
  --head:'Cinzel',Georgia,serif; --body:'Lato',system-ui,-apple-system,Segoe UI,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;font-family:var(--body);font-size:17px;line-height:1.7;color:var(--text);background:#fff;-webkit-font-smoothing:antialiased}
img,video,iframe{max-width:100%;display:block}
a{color:var(--steel)} a:hover{color:var(--navy)}
h1,h2,h3,h4,h5,h6{font-family:var(--head);color:var(--navy);line-height:1.25;margin:.2em 0 .5em;font-weight:600;letter-spacing:.02em}
h1{font-size:clamp(2rem,4.5vw,3.4rem)} h2{font-size:clamp(1.6rem,3vw,2.3rem)} h3{font-size:1.45rem} h4{font-size:1.3rem} h5{font-size:1.1rem}
p{margin:0 0 1em}
.wrap{width:min(1200px,92vw);margin:0 auto} .narrow{width:min(820px,92vw)} .center{text-align:center}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:8px 14px;z-index:999}.skip:focus{left:8px}
.chrome-text{background:var(--chrome-text);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}

/* Buttons: blue with chrome outline */
.btn{display:inline-flex;align-items:center;gap:.55em;justify-content:center;padding:.8em 1.6em;border-radius:999px;font-family:var(--body);font-weight:700;font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:#fff;cursor:pointer;
  border:2px solid transparent;background:linear-gradient(180deg,var(--steel-hi),var(--steel) 55%,var(--navy-2)) padding-box,var(--chrome) border-box;
  box-shadow:0 6px 18px -8px rgba(23,49,86,.8),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .15s,box-shadow .15s,filter .15s}
.btn:hover,.btn:focus-visible{color:#fff;transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 10px 24px -8px rgba(23,49,86,.9),0 0 0 3px rgba(195,202,211,.35)}
.btn-sm{padding:.55em 1.15em;font-size:.82rem}
.btn-ghost{background:linear-gradient(180deg,rgba(16,34,63,.55),rgba(16,34,63,.85)) padding-box,var(--chrome) border-box}
.w-btn{margin:.6em 0 1em}.w-btn .btn{max-width:100%;white-space:normal;text-align:center}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* Top bar + header */
.topbar{background:var(--ink);color:var(--silver);font-size:.85rem}
.topbar-in{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:6px 0;flex-wrap:wrap}
.topbar a{color:var(--silver);text-decoration:none}.topbar a:hover{color:#fff}
.topbar-contact{display:flex;gap:22px;flex-wrap:wrap}.topbar-contact i{color:var(--steel-hi);margin-right:6px}
.social{display:flex;gap:10px}.social a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:var(--silver);border:1px solid rgba(195,202,211,.35);text-decoration:none;transition:.2s}
.social a:hover{background:var(--steel);color:#fff;border-color:var(--silver)}
.social.big a{width:42px;height:42px;font-size:1.1rem}
.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,var(--navy),var(--ink));border-bottom:1px solid transparent;border-image:var(--chrome) 1;box-shadow:0 8px 24px -14px rgba(0,0,0,.6)}
.header-in{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:8px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.brand img{width:64px;height:auto}
.brand span{font-family:var(--head);font-weight:700;font-size:1.25rem;line-height:1;background:var(--chrome-text);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.06em}
.brand small{display:block;font-size:.7rem;letter-spacing:.32em;margin-top:5px;text-transform:uppercase}
.menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.menu>li{position:relative}
.menu>li>a{display:block;white-space:nowrap;padding:12px 9px;color:#e6ebf1;text-decoration:none;font-size:.9rem;font-weight:700;letter-spacing:.03em;border-radius:8px}
.menu>li>a:hover,.menu>li>a.active{color:#fff;background:rgba(63,124,191,.25)}
.menu .nav-cta{margin-left:8px}.menu .nav-cta a.btn{color:#fff;padding:.55em 1.1em}
.sub-toggle{display:none;background:none;border:0;color:var(--silver);cursor:pointer}
.sub{position:absolute;left:50%;top:100%;transform:translate(-50%,8px);min-width:560px;display:grid;grid-template-columns:1fr 1fr;gap:10px 26px;padding:22px 26px;background:var(--ink);border:1px solid rgba(195,202,211,.3);border-radius:var(--radius);box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:.18s}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:translate(-50%,0)}
.sub-head{display:block;font-family:var(--head);color:#fff;text-decoration:none;font-size:1.05rem;padding-bottom:6px;margin-bottom:6px;border-bottom:1px solid rgba(195,202,211,.25)}
.sub ul{list-style:none;margin:0;padding:0}.sub li a{display:block;padding:4px 0;color:var(--silver);text-decoration:none;font-size:.88rem}
.sub li a:hover,.sub-head:hover{color:#fff}.sub li a:hover{padding-left:4px;transition:.15s}
.menu-toggle{display:none;background:none;border:1px solid rgba(195,202,211,.4);border-radius:10px;padding:10px;cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;background:var(--silver);margin:5px 0;transition:.2s}
@media (max-width:1320px){
  .menu-toggle{display:block}
  .site-nav{position:fixed;inset:0 0 0 auto;width:min(380px,88vw);top:0;background:var(--ink);padding:80px 20px 30px;transform:translateX(100%);transition:transform .25s;overflow:auto;border-left:1px solid rgba(195,202,211,.25)}
  .nav-open .site-nav{transform:none}
  .nav-open .menu-toggle{position:relative;z-index:60}
  .nav-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-open .menu-toggle span:nth-child(2){opacity:0}.nav-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .menu{flex-direction:column;align-items:stretch}
  .menu>li{display:flex;flex-wrap:wrap;align-items:center;border-bottom:1px solid rgba(195,202,211,.12)}
  .menu>li>a{flex:1;font-size:1rem}
  .sub-toggle{display:block;padding:10px 12px}
  .sub{position:static;transform:none;min-width:0;width:100%;grid-template-columns:1fr;display:none;opacity:1;visibility:visible;padding:8px 14px 14px;border:0;box-shadow:none;background:transparent}
  .has-sub.open .sub{display:grid}
  .has-sub:hover .sub{transform:none}
  .menu .nav-cta{margin:16px 0 0;border:0}.menu .nav-cta a{flex:1}
}
@media (max-width:640px){.topbar-contact a:nth-child(2){display:none}.brand span{font-size:1.05rem}.brand img{width:52px}}

/* Heroes */
.page-hero,.home-hero{position:relative;background-size:cover;background-position:center;color:#fff;text-align:center;isolation:isolate}
.page-hero::before,.home-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at center,rgba(16,34,63,.55),rgba(11,22,40,.92)),linear-gradient(180deg,rgba(11,22,40,.3),rgba(11,22,40,.85))}
.page-hero{padding:56px 0 46px}
.page-hero h1{margin:.1em 0 .3em}
.hero-logo{width:96px;height:auto;margin:0 auto 10px;filter:drop-shadow(0 4px 14px rgba(0,0,0,.5))}
.hero-logo.xl{width:min(230px,50vw)}
.kicker{font-family:var(--body);text-transform:uppercase;letter-spacing:.3em;font-size:.8rem;color:var(--silver);margin:0 0 .4em}
.home-hero{padding:70px 0 60px;min-height:min(92vh,860px);display:grid;align-items:center}
.home-hero h1{font-size:clamp(2.4rem,6vw,4.6rem);margin:.15em 0 0}
.est{font-family:var(--head);letter-spacing:.5em;color:var(--silver);margin:0 0 .6em}
.hero-sub{color:#e9eef4;font-family:var(--body);font-weight:400;font-size:clamp(1.05rem,2vw,1.35rem);letter-spacing:.04em}
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:26px 0}
.assoc{display:flex;gap:28px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:18px}
.assoc img{height:64px;width:auto;filter:drop-shadow(0 2px 8px rgba(0,0,0,.5))}
.tagline{display:flex;gap:.5em;justify-content:center;flex-wrap:wrap;font-family:var(--head);color:var(--silver);letter-spacing:.12em}
.tagline.big{font-size:clamp(1rem,2.2vw,1.4rem);margin-bottom:18px}
.tagline .tag-line h1,.tagline .tag-line h2,.tagline .tag-line h3,.tagline .tag-line h4{color:inherit;margin:0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:12px 0 0;padding:0;font-size:.85rem}
.crumbs li+li::before{content:"›";margin-right:6px;color:var(--silver-dk)}
.crumbs a{color:var(--silver);text-decoration:none}.crumbs a:hover{color:#fff}.crumbs [aria-current]{color:#fff}
.post-meta{color:var(--silver)}.post-meta a{color:#fff}

/* Bands */
.band{padding:clamp(48px,7vw,90px) 0;position:relative}
.band.alt{background:linear-gradient(180deg,var(--mist),var(--ice))}
.band+.band:not(.alt):not(.photo-bg)::before{content:"";position:absolute;top:0;left:50%;width:min(320px,60vw);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--silver-dk),transparent)}
.photo-bg{background-size:cover;background-position:center;color:#fff;isolation:isolate}
.photo-bg::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,22,40,.72),rgba(16,34,63,.82))}
.photo-bg.empty::after{background:linear-gradient(180deg,rgba(11,22,40,.08),rgba(11,22,40,.2))}
.photo-bg h1,.photo-bg h2,.photo-bg h3,.photo-bg h4,.photo-bg h5{background:var(--chrome-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.photo-bg a:not(.btn){color:#fff}
.inner.photo-bg{position:relative;border-radius:var(--radius);overflow:hidden;padding:30px}
.cols{display:grid;gap:clamp(22px,4vw,48px);align-items:center}
.cols.multi{grid-template-columns:var(--cols)}
.cols .cols{gap:16px}
.col{min-width:0}
.col-photo{background-size:cover;background-position:center;border-radius:var(--radius);box-shadow:var(--shadow);outline:1px solid rgba(195,202,211,.5);outline-offset:6px;align-self:stretch}
.inner+.inner{margin-top:8px}
@media (max-width:860px){.cols.multi{grid-template-columns:1fr}.col-photo{min-height:340px!important}.inner .cols.multi[style*="2fr 10fr"]{grid-template-columns:auto 1fr}}

/* Content */
.w-heading h4{font-size:1.25rem}
.w-heading h2+h2,.w-heading h3+h3{margin-top:-.3em}
.w-heading p,.w-text p{font-size:1.02rem}
.photo-bg .w-heading p,.photo-bg .w-text p{color:#eef2f6}
.w-image{margin:0 0 1em}
.w-image img{border-radius:var(--radius);margin:0 auto}
.w-image img[src*="Untitled-presentation-6-2"]{border-radius:0;max-width:260px;opacity:.9}
.band .w-image img[src*="Craffenheim-Rottweilers-Edited"]{max-width:200px;border-radius:0}
.w-image img:not([src$=".png"]){box-shadow:var(--shadow)}
.w-icon{font-size:2rem;color:var(--steel);margin:.3em 0}
.paw-list{list-style:none;padding:0;margin:0 0 1.2em}
.paw-list li{position:relative;padding:.35em 0 .35em 2em}
.paw-list li::before{content:"\f1b0";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:.42em;color:var(--steel);font-size:.95em}
.photo-bg .paw-list li::before{color:var(--silver)}
hr.divider{border:0;height:1px;background:linear-gradient(90deg,transparent,var(--silver-dk),transparent);margin:30px 0}
.lead{font-size:1.2rem;color:var(--muted)}

/* Cards (dogs, services) */
.card,.iconbox{display:block;text-decoration:none;color:inherit}
.card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px -18px rgba(11,22,40,.5);border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box;transition:transform .2s,box-shadow .2s;margin-bottom:10px}
a.card:hover{transform:translateY(-5px);box-shadow:0 22px 40px -18px rgba(11,22,40,.6)}
.card-img{aspect-ratio:4/5;overflow:hidden;background:var(--ice)}
.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
a.card:hover .card-img img{transform:scale(1.05)}
.card-body{padding:16px 18px}
.card-title{font-size:1.12rem;margin:0;color:var(--navy);text-align:center}
.card .card-text{font-size:.96rem;color:var(--muted);margin-top:8px}
.card .btn{margin-top:10px}
.iconbox{display:flex;align-items:center;gap:14px;margin:.4em 0}
.iconbox .card-body{padding:0}.iconbox .card-title{font-family:var(--body);font-size:1.02rem;text-align:left;font-weight:700}
.card-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;color:#fff;flex-shrink:0;border:2px solid transparent;background:linear-gradient(var(--steel),var(--navy-2)) padding-box,var(--chrome) border-box}
.photo-bg .iconbox .card-title{color:#fff}

/* Carousel */
.carousel{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--ink);box-shadow:var(--shadow);border:3px solid transparent;background:linear-gradient(var(--ink),var(--ink)) padding-box,var(--chrome) border-box;margin-bottom:1em}
.carousel .track{display:flex;list-style:none;margin:0;padding:0;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.carousel .track::-webkit-scrollbar{display:none}
.carousel .slide{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:4/5;display:grid;place-items:center;background:var(--ink)}
.carousel .slide img{width:100%;height:100%;object-fit:contain;cursor:zoom-in}
.carousel.wide .slide{aspect-ratio:16/10}.carousel.wide .slide img{object-fit:cover}
.carousel .nav,.testimonials .nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;font-size:1.9rem;line-height:1;color:#fff;cursor:pointer;border:2px solid transparent;background:linear-gradient(rgba(23,49,86,.85),rgba(11,22,40,.9)) padding-box,var(--chrome) border-box;display:grid;place-items:center;padding-bottom:4px}
.carousel .prev{left:12px}.carousel .next{right:12px}
.carousel .nav:hover{filter:brightness(1.25)}
.carousel .dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:7px;flex-wrap:wrap;padding:0 60px}
.carousel .dots button{width:9px;height:9px;border-radius:50%;border:1px solid #fff;background:rgba(255,255,255,.3);padding:0;cursor:pointer}
.carousel .dots button[aria-current="true"]{background:var(--chrome);width:24px;border-radius:6px}

/* Dog profile */
.dog-profile main>section.band:first-of-type{background:linear-gradient(180deg,var(--mist),#fff)}
.dog-profile main>section.band:nth-of-type(2) .cols.multi{align-items:start}
.dog-profile .w-image img[src*="MAIN"],.dog-profile main>section.band:nth-of-type(2) .w-image img{border:4px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box;padding:6px;border-radius:18px;box-shadow:0 30px 60px -25px rgba(11,22,40,.6)}
.dog-profile main>section.band:nth-of-type(2) .paw-list{display:grid;grid-template-columns:1fr;gap:0;background:var(--navy);color:#e9eef4;border-radius:var(--radius);padding:12px 22px;border:2px solid transparent;background:linear-gradient(var(--navy),var(--ink)) padding-box,var(--chrome) border-box}
.dog-profile main>section.band:nth-of-type(2) .paw-list li{border-bottom:1px solid rgba(195,202,211,.15);padding:.6em 0 .6em 2em}
.dog-profile main>section.band:nth-of-type(2) .paw-list li:last-child{border:0}
.dog-profile main>section.band:nth-of-type(2) .paw-list li::before{color:var(--silver);top:.7em}
.dog-profile main>section.band:nth-of-type(2) .paw-list strong{color:#fff;letter-spacing:.06em;font-size:.85em;margin-right:.3em}
.dog-profile .inner .w-heading p{margin:0;font-weight:700}

/* Testimonials */
.testimonials{position:relative;padding:10px 60px}
.testimonial{margin:0;display:none;background:#fff;color:var(--text);border-radius:var(--radius);padding:30px 34px;box-shadow:var(--shadow);border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box}
.testimonial.on{display:block}
.testimonial p{font-style:italic}
.testimonial footer{font-family:var(--head);color:var(--navy);font-weight:700}
.stars{color:var(--steel);letter-spacing:4px;margin-bottom:10px}
.testimonials .prev{left:0}.testimonials .next{right:0}
@media (max-width:640px){.testimonials{padding:10px 0 60px}.testimonials .nav{top:auto;bottom:0;transform:none}.testimonials .prev{left:calc(50% - 52px)}.testimonials .next{right:calc(50% - 52px)}}

/* Video, map, forms */
.w-video video{width:100%;border-radius:var(--radius);background:#000;box-shadow:var(--shadow);border:3px solid transparent;background:linear-gradient(#000,#000) padding-box,var(--chrome) border-box}
.w-video{margin-bottom:1em}
.w-map iframe{width:100%;height:420px;border:0;border-radius:var(--radius);box-shadow:var(--shadow)}
.contact-form{display:grid;gap:14px;background:#fff;padding:28px;border-radius:var(--radius);box-shadow:var(--shadow);border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box;color:var(--text)}
.contact-form label{display:grid;gap:6px;font-weight:700;font-size:.92rem;color:var(--navy)}
.contact-form input,.contact-form textarea{font:inherit;padding:12px 14px;border:1px solid var(--silver);border-radius:10px;background:var(--mist);color:var(--text)}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--steel-hi);border-color:var(--steel);background:#fff}
.contact-form .btn{justify-self:start}
.hp{position:absolute;left:-9999px}
.form-msg{margin:0;padding:12px 14px;border-radius:10px;background:#e7f1fb;color:var(--navy);font-weight:700}
.form-msg.err{background:#fdecec;color:#8a1f1f}
.fb-card{text-align:center;padding:30px;border-radius:var(--radius);background:linear-gradient(var(--navy),var(--ink)) padding-box,var(--chrome) border-box;border:2px solid transparent;color:#fff}
.fb-card i{font-size:2.6rem;color:var(--silver);margin-bottom:10px}

/* Blog */
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:26px}
.post-card{display:flex;flex-direction:column;text-decoration:none;color:inherit;border-radius:var(--radius);overflow:hidden;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box;border:2px solid transparent;box-shadow:0 10px 30px -18px rgba(11,22,40,.5);transition:transform .2s}
.post-card:hover{transform:translateY(-5px)}
.post-card .card-img{aspect-ratio:16/10}.post-card time{font-size:.82rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
.post-card .card-title{text-align:left;margin:.3em 0 .4em}.post-card p{color:var(--muted);font-size:.96rem}
.post-card .more{color:var(--steel);font-weight:700}
.prose{max-width:780px;margin:0 auto}.prose h2,.prose h3{margin-top:1.4em}
.share{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center}
.share a:not(.btn){display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--navy);color:#fff;text-decoration:none}
.post-nav{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}

/* Footer */
.site-footer{background:radial-gradient(ellipse at top,var(--navy-2),var(--ink) 70%);color:var(--silver);padding:0 0 20px;position:relative;margin-top:0}
.site-footer .knot{height:4px;background:var(--chrome)}
.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1.4fr;gap:40px;padding:60px 0 30px}
.site-footer h2{font-size:1.05rem;color:#fff;letter-spacing:.12em;text-transform:uppercase;margin:0 0 14px}
.site-footer h2:not(:first-child){margin-top:26px}
.f-brand img{width:150px;margin-bottom:12px}.motto{font-family:var(--head);color:#fff;letter-spacing:.1em}
.f-list{list-style:none;margin:0;padding:0}.f-list li{padding:3px 0}
.f-list a{color:var(--silver);text-decoration:none}.f-list a:hover{color:#fff}.f-list i{color:var(--steel-hi);margin-right:8px;width:16px}
.f-list.cols2{columns:2;column-gap:24px}
.copy{display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(195,202,211,.18);padding-top:18px;font-size:.88rem}
.totop{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:#fff;border:2px solid transparent;background:linear-gradient(var(--steel),var(--navy-2)) padding-box,var(--chrome) border-box}
.wa-float{position:fixed;right:18px;bottom:18px;z-index:40;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:1.8rem;color:#fff;text-decoration:none;border:2px solid transparent;background:linear-gradient(var(--steel-hi),var(--navy-2)) padding-box,var(--chrome) border-box;box-shadow:0 10px 24px -8px rgba(0,0,0,.6)}
.wa-float:hover{color:#fff;transform:scale(1.06)}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr;gap:10px}.f-list.cols2{columns:1}}

/* Lightbox */
.lb{position:fixed;inset:0;z-index:100;background:rgba(5,10,20,.94);display:grid;place-items:center;padding:4vh 4vw}
.lb img{max-height:88vh;max-width:92vw;object-fit:contain;border-radius:8px;border:2px solid var(--silver)}
.lb button{position:absolute;color:#fff;background:none;border:0;font-size:2.4rem;cursor:pointer;padding:10px 16px}
.lb .x{top:10px;right:14px}.lb .p{left:10px;top:50%;transform:translateY(-50%)}.lb .n{right:10px;top:50%;transform:translateY(-50%)}

/* Reveal */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
.poem{margin:1.4em 0;padding:18px 24px;border-left:3px solid var(--steel);background:linear-gradient(90deg,rgba(42,92,148,.08),transparent);font-family:var(--head);font-style:italic;font-size:1.08rem;color:var(--navy);line-height:1.8}.poem p{margin:0}.photo-bg .poem{color:#eef2f6;border-color:var(--silver)}

/* new dog pages: side photo keeps a 4:5 frame and stays in view beside long text, so it is never stretched and cut */
.col-photo.fit{align-self:start;aspect-ratio:4/5;min-height:0;position:sticky;top:110px}
@media (max-width:860px){.col-photo.fit{position:static;min-height:0!important;width:100%;max-width:520px;justify-self:center}}
.parents{margin:6px 0 0;font-size:.9rem;color:var(--muted)}
.photo-bg .parents,.band.alt .parents{opacity:.9}

/* Up and Coming Rottweilers */
.sub.sub-single{min-width:300px;grid-template-columns:1fr}
.paw-list.two{columns:2;column-gap:32px}.paw-list.two li{break-inside:avoid}
.young-page .sub-h{font-size:1.1rem;margin:1.4em 0 .4em;color:var(--navy)}
.young-page .lead{margin:1em 0}
.young-cards{max-width:620px;margin:1.4em auto}
.young-fig img{box-shadow:var(--shadow)}
@media (max-width:860px){.paw-list.two{columns:1}.young-cols{grid-template-columns:1fr!important}.young-cols .young-fig{order:-1}}
@media (max-width:1320px){.sub.sub-single{min-width:0}}

/* Desktop menu: wider header, long labels on two lines so every item fits */
@media (min-width:1321px){.header-in.wrap{width:min(1560px,97vw)}.menu>li>a{white-space:normal;text-align:center;line-height:1.2;max-width:132px;padding:8px 8px;font-size:.88rem}.menu .nav-cta{margin-left:6px}.menu .nav-cta a.btn{white-space:nowrap}}
@media (min-width:1321px) and (max-width:1440px){.brand img{width:54px}.brand span{font-size:1.1rem}.menu>li>a{padding:8px 6px;font-size:.84rem;max-width:126px}}
@media (max-width:1320px){.site-nav{padding-top:118px}}

/* Resources guides */
.guide{max-width:780px}.guide h2{font-size:1.45rem;margin-top:1.6em}.guide h3{font-size:1.12rem;margin-top:1.3em}
.guide>h2:first-of-type{margin-top:.6em}
.guide-fig{margin:1.6em auto;text-align:center}.guide-fig img{max-height:420px;width:auto;margin:0 auto;border-radius:var(--radius);box-shadow:var(--shadow)}
.emoji-list{list-style:none;padding:0;margin:0 0 1.2em}.emoji-list li{padding:.3em 0}
.guide-note{margin:1.4em 0;padding:16px 20px;border-left:3px solid var(--steel);background:linear-gradient(90deg,rgba(42,92,148,.1),transparent);color:var(--navy);font-weight:600;border-radius:0 10px 10px 0}
.guide-dl{margin:0 0 1.2em}.guide-dl:last-child{margin:2em 0 0}
.guide-label{margin:1.2em 0 .3em;color:var(--navy)}
.guide-toc{padding-left:1.3em}.guide-toc li{padding:.3em 0}
.guide-nav{display:flex;justify-content:space-between;gap:16px;margin:2.4em 0 0;padding-top:1.4em;border-top:1px solid var(--ice)}
.guide-nav a{display:flex;flex-direction:column;text-decoration:none;font-weight:700;color:var(--navy);max-width:48%}.guide-nav a span{font-size:.8rem;font-weight:400;color:var(--muted)}.guide-nav a.next{text-align:right;margin-left:auto}
.guide-more{margin-top:2em;padding:22px 26px;background:var(--mist);border-radius:var(--radius)}.guide-more h2{font-size:1.2rem;margin-top:0}
.guide-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))!important}
.card .card-text{display:block;text-align:center;font-size:.85rem;color:var(--muted);margin-top:6px}
.dl-link{display:block;margin-top:8px;font-size:.85rem}
.sub.sub-3{grid-template-columns:repeat(3,1fr);min-width:760px;left:auto;right:-120px;transform:translateY(8px)}
.has-sub:hover .sub.sub-3,.has-sub:focus-within .sub.sub-3{transform:none}
@media (max-width:1320px){.sub.sub-3{min-width:0;grid-template-columns:1fr}}
@media (max-width:640px){.guide-nav{flex-direction:column}.guide-nav a{max-width:none}.guide-nav a.next{text-align:left;margin-left:0}}

/* Blog posts (Oct 2026) */
.post-table{overflow-x:auto;margin:1em 0 1.6em}.post-table table{width:100%;border-collapse:collapse;font-size:.95rem}
.post-table th{background:var(--navy);color:#fff;text-align:left;padding:10px 14px;font-weight:700}
.post-table td{padding:9px 14px;border-bottom:1px solid var(--ice)}.post-table tr:nth-child(even) td{background:rgba(42,92,148,.05)}
.post-body blockquote{margin:1.2em 0;padding:14px 20px;border-left:3px solid var(--steel);font-style:italic;color:var(--navy)}
.post-body blockquote p{margin:0}.post-sign{margin-top:2em;color:var(--muted)}

/* Lighter headers (Oct 2026): Jayne's steel blue + silver strip */
.page-hero::before{background:linear-gradient(100deg,rgba(114,131,157,.62),rgba(50,75,106,.72)),linear-gradient(180deg,rgba(11,22,40,0) 40%,rgba(11,22,40,.35))}
.page-hero{border-bottom:6px solid transparent;border-image:var(--chrome) 1}
.page-hero .kicker,.page-hero .crumbs a,.page-hero .post-meta{color:#eef2f7}
.page-hero .kicker,.page-hero .crumbs,.page-hero .post-meta{text-shadow:0 1px 6px rgba(11,22,40,.7)}
.home-hero.split{background:linear-gradient(100deg,#76879f,#324b6a);min-height:0;padding:54px 0 40px}
.home-hero.split::before{display:none}
.home-hero.split .hero-logo.xl{width:min(190px,42vw)}
.chrome-strip{height:14px;background:var(--chrome)}
.home-photo{margin:0;line-height:0;background:#c3d1de}.home-photo img{width:100%;height:auto;display:block}

/* Puppy gallery */
.gallery-title{font-size:clamp(1.4rem,2.6vw,2rem);margin-bottom:.6em}
.gallery-intro p{margin:0 0 1em;text-align:center}
.puppy-gallery{list-style:none;margin:0 0 2em;padding:0;columns:3 280px;column-gap:16px}
.puppy-gallery li{break-inside:avoid;margin:0 0 16px}
.puppy-gallery a{display:block;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:2px solid var(--silver);cursor:zoom-in}
.puppy-gallery img{display:block;width:100%;height:auto;transition:transform .4s ease}
.puppy-gallery a:hover img,.puppy-gallery a:focus-visible img{transform:scale(1.04)}
@media (max-width:640px){.puppy-gallery{columns:2;column-gap:10px}.puppy-gallery li{margin-bottom:10px}}
.carousel+.w-btn{margin-top:1.4em}

/* Tagline typing */
.tagline.typing .ch{visibility:hidden}.tagline.typing .ch.on{visibility:visible}
.tagline.typing span{position:relative}
.tagline .ch.cur{position:relative}
.tagline .ch.cur::after{content:"";position:absolute;right:-.12em;top:.05em;bottom:.05em;width:2px;background:var(--silver);animation:caret 1s steps(1) infinite}
.tagline .ch.cur.done::after{animation:caret 1s steps(1) 3,caretout .6s 3s forwards}
@keyframes caret{50%{opacity:0}}@keyframes caretout{to{opacity:0}}

/* Female profile header */
.page-hero.female-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.female-hero::before{display:none}
.female-photo{margin:0;line-height:0;background:#c3d1de}
.female-photo img{display:block;width:100%;height:auto;max-height:560px;object-fit:cover;object-position:center 70%}

/* Gallery header photo: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.plain-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.plain-hero::before{display:none}
.gallery-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.gallery-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.gallery-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Male profile header: whole photo always visible; blurred copy fills the sides on wide screens */
.page-hero.male-hero{background:linear-gradient(100deg,#76879f,#324b6a)!important}
.page-hero.male-hero::before{display:none}
.male-photo{position:relative;margin:0;line-height:0;overflow:hidden;background:#324b6a;text-align:center;isolation:isolate}
.male-photo::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--bg) center/cover;filter:blur(22px) brightness(.75)}
.male-photo img{display:inline-block;width:auto;max-width:100%;height:auto;max-height:620px;box-shadow:0 0 40px rgba(11,22,40,.45)}

/* Valhalla */
.valhalla-title{font-size:clamp(1.4rem,2.8vw,2.1rem)}
.valhalla-text p{margin:0 0 1em}
.valhalla-text.lead p{text-align:center}
.valhalla-text.lead p:first-child{font-size:1.15em;font-style:italic}
.valhalla-photos{list-style:none;margin:2em 0 0;padding:0;columns:3 240px;column-gap:16px}.valhalla-photos li{break-inside:avoid;margin:0 0 16px}
.valhalla-photos a{display:block;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:2px solid var(--silver);cursor:zoom-in}
.valhalla-photos img{display:block;width:100%;height:auto;transition:transform .4s ease}
.valhalla-photos a:hover img,.valhalla-photos a:focus-visible img{transform:scale(1.04)}
.valhalla-videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;margin-top:1.6em}
.valhalla-video{margin:0;border-radius:var(--radius);overflow:hidden;border:2px solid var(--silver);box-shadow:var(--shadow);background:#0b1628;line-height:0}
.valhalla-video video{width:100%;max-height:560px;background:#0b1628}
.valhalla-note{grid-column:1/-1;text-align:center;margin:0;font-style:italic;opacity:.85}
.valhalla-tribute{background:linear-gradient(100deg,#324b6a,#0b1628);color:#e8edf3;text-align:center}
.valhalla-tribute .knot{margin:0 auto 1.4em}
.valhalla-inscription p{font-family:Cinzel,serif;font-size:clamp(1rem,1.7vw,1.2rem);line-height:1.7;margin:0 0 1em;color:#e8edf3}
.valhalla-inscription p:last-child{font-size:clamp(1.15rem,2.2vw,1.5rem);margin-top:1.4em;background:linear-gradient(180deg,#fff,#b9c4d1);-webkit-background-clip:text;background-clip:text;color:transparent}
.valhalla-link{font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* Landscape photo shown whole (homepage champion certificate) */
.col-photo.wide{aspect-ratio:16/9;min-height:0!important;align-self:center;background-size:contain;background-repeat:no-repeat}
/* Photo shown whole in a frame of its own shape (homepage Remy certificate) */
.col-photo.whole{min-height:0!important;align-self:center;background-size:contain;background-repeat:no-repeat}
@media (max-width:860px){.col-photo.whole{width:100%;max-width:520px;justify-self:center}}

/* Photos shown whole: site.js gives each side photo and card picture a frame of the photo's own shape */
.col-photo.whole{min-height:0!important;background-size:contain;background-repeat:no-repeat;background-position:center;align-self:center}
.col-photo.fit.whole{align-self:start}
@media (max-width:860px){.col-photo.whole{width:100%;max-width:560px;justify-self:center;align-self:start}}
.post-card .card-img img{object-fit:contain}

/* Tour Our Kennel */
.tour-title{font-size:clamp(1.3rem,2.6vw,1.9rem)}
.tour-text p{margin:0 0 1em}
.tour-text.lead p:first-child{font-size:1.12em}
.narrow-text{max-width:760px;margin:0 auto;text-align:center}
.tour-photos{list-style:none;margin:1.6em 0 0;padding:0;columns:4 230px;column-gap:14px}.tour-photos li{break-inside:avoid;margin:0 0 14px}
.tour-photos a{display:block;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:2px solid var(--silver);cursor:zoom-in}
.tour-photos img{display:block;width:100%;height:auto;transition:transform .4s ease}
.tour-photos a:hover img,.tour-photos a:focus-visible img{transform:scale(1.04)}

/* Tour small photos */
.tour-photos-small{columns:6 140px;column-gap:10px}.tour-photos-small li{margin:0 0 10px}

/* In Gratitude */
.gratitude-page{--cap:'Cormorant Garamond',Georgia,serif}
.g-subtitle{font-family:var(--head);text-align:center;font-size:clamp(1.15rem,2.4vw,1.6rem);line-height:1.4;color:var(--navy);margin:0 0 .9em}
.g-text p{margin:0 0 1em}.g-text.lead p{text-align:center;font-family:var(--cap);font-style:italic;font-size:clamp(1.25rem,2.2vw,1.5rem);line-height:1.5;color:var(--steel)}
.g-adrk{display:grid;grid-template-columns:1fr 250px;gap:40px;align-items:center}
.g-medallion{margin:0;text-align:center}
.g-medallion img{display:block;width:220px;height:220px;object-fit:contain;margin:0 auto;padding:22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0%,#eef1f5 55%,#cfd6de 100%);border:5px solid transparent;background-clip:padding-box;box-shadow:0 0 0 3px #c3cad3,0 0 0 7px #fff,0 0 0 9px #8a95a3,var(--shadow)}
.g-medallion figcaption{font-family:var(--cap);font-style:italic;font-size:1.1rem;color:var(--muted);margin-top:1em}
.g-kennel-name{font-family:var(--cap);font-style:italic;font-size:1.45rem;color:var(--steel);margin:-.6em 0 1em}
.g-side{display:grid;grid-template-columns:1fr minmax(220px,340px);gap:36px;align-items:start;margin-bottom:1em}
.g-side-text p{margin:0 0 1em}
.g-photos{display:grid;gap:22px;margin:1.6em 0 1.8em;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.g-photos.n1{grid-template-columns:minmax(0,640px);justify-content:center}
.g-photo{margin:0}
.g-photo a{display:block;line-height:0;border-radius:var(--radius);overflow:hidden;border:2px solid var(--silver);box-shadow:var(--shadow);cursor:zoom-in;background:#fff}
.g-photo img{width:100%;height:auto;transition:transform .4s ease}
.g-photo a:hover img,.g-photo a:focus-visible img{transform:scale(1.03)}
.g-photo figcaption{font-family:var(--cap);font-style:italic;font-weight:600;font-size:clamp(1.1rem,1.6vw,1.3rem);line-height:1.35;color:var(--navy);text-align:center;margin:.9em auto 0;max-width:34em;padding-top:.6em;position:relative}
.g-photo figcaption::before{content:"";position:absolute;top:0;left:50%;width:56px;height:2px;margin-left:-28px;background:var(--chrome)}
.g-dogs{display:grid;gap:30px;margin:1.6em 0}
.g-dog{background:#fff;border-radius:var(--radius);border:1px solid var(--silver);box-shadow:var(--shadow);padding:28px 30px 8px;position:relative;overflow:hidden}
.g-dog::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--chrome)}
.g-dog h3{margin:0 0 .7em;font-family:var(--head);line-height:1.2}
.g-dog-name{display:block;font-size:clamp(1.6rem,3vw,2.2rem);color:var(--navy)}
.g-dog-kennel{display:block;font-family:var(--cap);font-style:italic;font-weight:500;font-size:1.3rem;color:var(--steel);letter-spacing:.02em}
.g-dog p{margin:0 0 1em}
.g-emph{margin:1.8em 0;padding:0;border:0;text-align:center}
.g-emph p{font-family:var(--cap);font-style:italic;font-weight:600;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1.4;color:var(--navy);margin:0 0 .25em}
.g-kennels{list-style:none;padding:0;margin:1.6em 0 2em;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.g-kennels{grid-template-columns:repeat(2,minmax(0,1fr))}}
.g-kennels li{background:linear-gradient(160deg,#fff,#eef1f5);border:1px solid var(--silver);border-radius:var(--radius);padding:16px 18px;text-align:center;font-family:var(--head);font-weight:600;font-size:1.05rem;color:var(--navy);box-shadow:0 10px 24px -18px rgba(11,22,40,.5)}
.g-kennels li span{display:block;font-family:var(--cap);font-style:italic;font-weight:500;font-size:1.05rem;color:var(--steel);margin-bottom:2px}
.g-tribute{background:linear-gradient(100deg,#324b6a,#0b1628);color:#e8edf3;text-align:center}
.g-tribute h2{color:transparent;background:var(--chrome-text);-webkit-background-clip:text;background-clip:text;font-size:clamp(1.7rem,3.4vw,2.4rem)}
.g-tribute-text p{margin:0 0 1em;color:#e8edf3}
.g-signature{margin-top:2.2em}
.g-signature .g-sig-line{font-family:var(--cap);font-style:italic;font-size:1.35rem}
.g-signature .g-sig-name{font-family:var(--head);font-size:clamp(1.4rem,2.8vw,2rem);font-weight:700;margin:.2em 0 .4em;color:transparent;background:var(--chrome-text);-webkit-background-clip:text;background-clip:text}
.g-signature .g-sig-motto{font-family:var(--cap);font-style:italic;font-size:1.2rem;opacity:.9}
@media (max-width:760px){.g-adrk,.g-side{grid-template-columns:1fr}.g-medallion{order:-1}.g-photos{grid-template-columns:1fr}.g-dog{padding:22px 18px 4px}}
.card:not(.post-card) .card-img:has(img[src$=".png"]){background:radial-gradient(circle at 50% 38%,var(--steel) 0%,var(--navy-2) 55%,var(--navy) 100%)}.card:not(.post-card) .card-img:has(img[src$=".png"]) img{filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}

/* Two photos stacked in one side column (Our Females, Oct 2026) */
.photo-stack{display:flex;flex-direction:column;gap:28px;align-self:start}
.photo-stack .col-photo{width:100%;max-width:none}
@media (max-width:860px){.photo-stack{width:100%;max-width:520px;justify-self:center}}

/* Cards in a row share one height on wide screens (Oct 2026) */
@media (min-width:861px){.cols.multi:has(>.col>.card:only-child){align-items:stretch}.cols.multi>.col:has(>.card:only-child){display:flex;flex-direction:column}.cols.multi>.col>.card:only-child{flex:1}}

/* Card pictures matched in a row (Oct 2026) */
.card-img.matched{position:relative}
.card-img.matched::before{content:"";position:absolute;inset:-24px;background:var(--bg) center/cover;filter:blur(18px) brightness(.9);opacity:.75}
.card-img.matched img{position:relative;object-fit:contain}

/* Plain blue band: photo-bg look without a photo (Oct 2026) */
.photo-bg.plain{background:linear-gradient(160deg,var(--navy-2),var(--navy) 55%,var(--ink))}
.photo-bg.plain::after{display:none}

/* Second photo stacked beside a section stays shorter so the pair matches the text (Oct 2026) */
@media (min-width:861px){.young-fig+.young-fig img{max-height:320px;width:auto;max-width:100%;display:block;margin:0 auto}}

/* Cards with a download button underneath also share one height in a row (Oct 2026) */
@media (min-width:861px){.cols.multi:has(>.col>.card+.w-btn){align-items:stretch}.cols.multi>.col:has(>.card+.w-btn:last-child){display:flex;flex-direction:column}.cols.multi>.col>.card:has(+.w-btn:last-child){flex:1}}
.float-top{position:fixed;right:20px;bottom:86px;z-index:90;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;color:#fff;font-size:20px;cursor:pointer;border:2px solid transparent;background:linear-gradient(var(--steel),var(--navy-2)) padding-box,var(--chrome) border-box;box-shadow:0 6px 18px rgba(11,22,40,.35);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility .25s}
.float-top.show{opacity:1;visibility:visible;transform:none}
.float-top:hover,.float-top:focus-visible{background:linear-gradient(var(--steel-hi),var(--steel)) padding-box,var(--chrome) border-box}
@media (max-width:600px){.float-top{right:22px;bottom:86px;width:48px;height:48px}}

.fact-card .card-img{aspect-ratio:auto;height:210px;display:flex;align-items:center;justify-content:center}.fact-card .card-img img{width:auto;height:auto;max-width:180px;max-height:180px;object-fit:contain}
.facts-wide{margin:10px 0 24px;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px -18px rgba(11,22,40,.5)}.facts-wide img{display:block;width:100%;height:auto}

/* About Us: waving flag banner */
.flag-band{position:relative;line-height:0;background:#0b1628;border-top:6px solid transparent;border-bottom:6px solid transparent;border-image:var(--chrome) 1}
.flag-band video{width:100%;height:clamp(220px,42vw,560px);object-fit:cover;object-position:center}

/* Resource and blog photo layouts */
.guide-fig img{border:3px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--chrome) border-box}
.guide-fig.chart img{max-height:none;max-width:100%;width:auto}
.guide-fig.product img{max-height:300px;box-shadow:none;border:0;background:none}
.guide-fig a{display:inline-block}
.guide-gallery{display:grid;gap:14px;margin:1.8em 0;grid-template-columns:repeat(2,1fr)}
.guide-gallery.g3{grid-template-columns:repeat(3,1fr)}
.guide-gallery figure{margin:0;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff;line-height:0}
.guide-gallery figure a{display:block}
.guide-gallery img{width:100%;height:260px;object-fit:cover;transition:transform .4s}
.guide-gallery figure:hover img{transform:scale(1.03)}
.guide-gallery .contain img{object-fit:contain;padding:10px}
.guide-gallery.charts{align-items:start}
.guide-gallery.charts img{height:auto;max-height:640px}
.prose .guide-gallery,.prose .guide-fig{clear:both}
@media (max-width:640px){.guide-gallery,.guide-gallery.g3{grid-template-columns:1fr 1fr}.guide-gallery img{height:180px}.guide-gallery.charts{grid-template-columns:1fr}}
