/* Portable OVELIS parts. Load immediately after site.css. */
:root {
  --type-body:16px; --type-small:13px; --type-h3:18px; --type-h2:25px; --type-h1:29px;
  --leading-body:1.8; --leading-heading:1.5; --leading-small:1.7;
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:20px;
  --space-6:24px; --space-8:32px; --space-12:48px; --space-16:64px;
  --gold-text:#8A6A1E; --bar-offset:76px;
}
@media(min-width:601px){:root{--type-body:17px;--type-small:14px;--leading-body:1.85;--type-h1:34px;--type-h2:32px;}}
@media(min-width:961px){:root{--type-h1:44px;}}
body{font-size:var(--type-body);line-height:var(--leading-body);}
.nav .brand,.nav .btn{min-height:44px;}
.nav ul a{color:var(--ink);}
.doors{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0;}
.door{display:flex;flex-direction:column;height:100%;min-height:44px;padding:18px 16px 12px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface);text-decoration:none;}
.door:hover{border-color:var(--ink);}
.door > img{flex:none;width:64px;height:64px;margin-bottom:8px;}
.door h2{margin:0 0 4px;font-size:22px;letter-spacing:-.035em;}
.door p{margin:0;font-size:16px;line-height:1.65;}
.door-arrow{align-self:flex-end;margin-top:auto;padding-top:8px;line-height:1;}
@media(max-width:960px){
  :root{--bar-offset:112px;}
  .nav .wrap{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding-top:8px;}
  .nav .brand{justify-self:start;}
  .nav ul{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);width:100%;padding:0;margin:0;overflow:visible;font-size:15px;}
  .nav ul a{display:flex;}
  .nav .nav-ai{display:none;}
  .nav .btn{grid-column:2;grid-row:1;}
  .doors{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  .door{padding:14px 10px 12px;}
  .door > img{width:56px;height:56px;}
  .door h2{font-size:20px;}
  .door p{font-size:15px;line-height:1.55;}
}
/* Anchor offsets include the sticky bar, without double scroll padding. */
html{scroll-padding-top:0;scroll-behavior:auto;}
[id]{scroll-margin-top:var(--bar-offset);}
.nav ul a{min-height:44px;min-width:44px;}
details.form-more > summary::after,.faq.op-accordion .is-open .op-accordion-toggle,.ui-email-copy .op-copy-check{color:var(--gold-text);}
:focus-visible{outline:2px solid var(--ink);outline-offset:4px;}
@media(max-width:960px){.nav .wrap{padding-left:24px;padding-right:24px;}}
@media(max-width:600px){.nav .wrap{padding-left:20px;padding-right:20px;}}


/* Small door cards can be reused alongside the standard doors. */
.door--small{padding:14px 12px 12px;}
.door--small > img{width:44px;height:44px;}
.door--small h3{margin:0 0 4px;font-size:16px;line-height:1.5;letter-spacing:-.035em;}
.door--small p{font-size:14px;}
@media(max-width:600px){.door--small > img{width:44px;height:44px;}.door--small p{font-size:14px;}}
footer .privacy-link{grid-column:1/-1;}
footer .privacy-link a{display:inline-flex;align-items:center;min-height:44px;}
.privacy-form h2{font-size:24px;}
.privacy-form > p{margin:0;}
.door p .nw{white-space:nowrap;}
