/* KLAS Appraisals | www.klasappraisals.com
   Brand: pure black, bright white, satin champagne gold (#DDC792) used like jewelry.
   Type: LaFleur Serif (headings), KLAS Text (body), KLAS Caps (labels). Sizes set large on purpose.
   Note: KLAS fonts cover plain ASCII only, so body copy uses straight quotes and no em dashes. */

@font-face{font-family:"KLAS Text";src:url(fonts/KLASText-Regular.woff2?v=2) format("woff2");font-display:swap}
@font-face{font-family:"KLAS Caps";src:url(fonts/KLASCaps-Regular.woff2?v=2) format("woff2");font-display:swap}
@font-face{font-family:"LaFleur Serif";src:url(fonts/LaFleurSerif-Regular.woff2?v=2) format("woff2");font-display:swap}
@font-face{font-family:"LaFleur Serif";font-style:italic;src:url(fonts/LaFleurSerif-Italic.woff2?v=2) format("woff2");font-display:swap}

:root{
  --black:#000; --white:#fff; --gold:#DDC792;
  --sat:linear-gradient(105deg,#8C7B55 0%,#C9B27B 18%,#F3E6BF 34%,#D8C28A 48%,#A8966A 62%,#E6D4A0 80%,#9D8D68 100%);
  --satd:linear-gradient(105deg,#7A6A45 0%,#A8935F 20%,#D9C58F 36%,#9D8D68 55%,#C4AE78 78%,#7F6F4A 100%);
  --mute:rgba(255,255,255,.72); --ink:rgba(0,0,0,.7); --line:rgba(0,0,0,.12); --line-d:rgba(255,255,255,.14);
  --serif:"LaFleur Serif",Georgia,serif; --text:"KLAS Text",system-ui,sans-serif; --caps:"KLAS Caps",system-ui,sans-serif;
  --wrap:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--black);color:var(--white);font-family:var(--text);font-size:20px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 28px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;color:#000;padding:10px 16px;z-index:99}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.paper a:focus-visible{outline-color:#9D8D68}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

/* ---------- labels and headings ---------- */
.caps{font-family:var(--caps);text-transform:uppercase;font-weight:normal}
.kicker{display:flex;align-items:center;gap:18px;font-family:var(--caps);text-transform:uppercase;font-size:16px;letter-spacing:.34em;margin-bottom:30px}
.kicker::after{content:"";flex:0 1 220px;height:1px;background:var(--sat)}
.paper .kicker::after{background:var(--satd)}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.005em}
h1{font-size:clamp(46px,6.2vw,82px)}
h2{font-size:clamp(40px,4.8vw,62px);margin-bottom:26px}
h1 em,h2 em{font-style:italic}
.dark h1 em,.dark h2 em{background:var(--sat);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.lede{font-size:clamp(21px,2vw,24px);line-height:1.6;color:var(--mute);max-width:42ch}
.paper .lede{color:var(--ink)}

/* ---------- jewelry frame: satin hairline inset inside a box ---------- */
.frame{position:relative}
.frame::before{content:"";position:absolute;inset:var(--in,0);padding:1px;background:var(--sat);pointer-events:none;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}

/* ---------- buttons ---------- */
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:46px}
.btn{--in:5px;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:74px;padding:0 34px 0 calc(34px + .28em);
  font-family:var(--caps);text-transform:uppercase;font-size:17px;letter-spacing:.28em;text-decoration:none}
.btn.solid{background:var(--white);color:var(--black)}
.btn.line{--in:0;color:var(--white)}
@media (hover:hover){.btn,.row,.nav a{transition:opacity .2s}.btn:hover,.nav a:hover{opacity:.78}.row:hover{opacity:.7}}
.i{width:24px;height:24px;fill:none;stroke:url(#sat);stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.btn.solid .i{stroke:#000}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:20;background:rgba(0,0,0,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-d)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:86px}
.home{display:flex;align-items:center}
.home img{height:46px;width:auto}
.nav{display:flex;align-items:center;gap:36px}
.nav a{font-family:var(--caps);text-transform:uppercase;font-size:15px;letter-spacing:.26em;text-decoration:none}
.nav .call{--in:0;padding:16px 22px 16px calc(22px + .26em)}
@media (max-width:900px){.nav a:not(.call){display:none}}

/* ---------- hero ---------- */
.hero{padding:96px 0 120px;text-align:center}
.hero .logo{width:min(470px,78vw);margin:0 auto}
.hero .rule{width:64px;height:1px;background:var(--sat);margin:56px auto 50px}
.hero h1{max-width:15ch;margin:0 auto}
.hero .lede{margin:30px auto 0}
.hero .btns{justify-content:center}

/* ---------- sections ---------- */
section{padding:120px 0}
.paper{background:var(--white);color:var(--black)}
.split{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr;gap:28px}section{padding:88px 0}.hero{padding:72px 0 96px}}

/* numbered rows, like the digital card */
.rows{list-style:none}
.row{display:flex;gap:26px;align-items:flex-start;padding:30px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.dark .row{border-color:var(--line-d)}
.rows > :first-child .row,.rows > .row:first-child{padding-top:6px}
.n{font-family:var(--caps);font-size:18px;letter-spacing:.08em;width:34px;flex:none;padding-top:5px;background:var(--satd);-webkit-background-clip:text;background-clip:text;color:transparent}
.dark .n{background:var(--sat);-webkit-background-clip:text;background-clip:text}
.row .t{flex:1;display:flex;flex-direction:column;gap:8px}
.row b{font-family:var(--caps);font-weight:normal;text-transform:uppercase;letter-spacing:.2em;font-size:18px}
.row p,.row small{font-size:20px;line-height:1.55;color:var(--ink)}
.dark .row p{color:var(--mute)}
.ar{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.1;flex:none;margin-top:4px}
.note{margin-top:34px;font-size:18px;color:var(--ink)}

/* process grid */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:56px;border-top:1px solid var(--line-d)}
.step{padding:34px 26px 10px 0}
.step + .step{padding-left:26px;border-left:1px solid var(--line-d)}
.step .n{display:block;margin-bottom:20px}
.step b{display:block;font-family:var(--caps);font-weight:normal;text-transform:uppercase;letter-spacing:.2em;font-size:17px;margin-bottom:12px}
.step p{font-size:19px;line-height:1.55;color:var(--mute)}
@media (max-width:1000px){.steps{grid-template-columns:1fr}.step,.step + .step{padding:28px 0;border-left:0;border-bottom:1px solid var(--line-d)}}

/* standards box */
.box{--in:10px;padding:64px 60px;background:var(--white);color:var(--black)}
.box p{font-size:21px;line-height:1.65;color:var(--ink);max-width:62ch}
.box p + p{margin-top:18px}
@media (max-width:700px){.box{padding:46px 28px}}

/* parishes */
.parishes{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px;border-top:1px solid var(--line-d)}
.parishes li{font-family:var(--caps);text-transform:uppercase;font-size:16px;letter-spacing:.2em;padding:20px 0;border-bottom:1px solid var(--line-d)}
@media (max-width:800px){.parishes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.parishes li{font-size:14px;letter-spacing:.14em}}

/* ---------- footer ---------- */
footer{padding:96px 0 70px;text-align:center;border-top:1px solid var(--line-d)}
footer .house{height:58px;width:auto;margin:0 auto 30px}
footer .name{font-family:var(--caps);text-transform:uppercase;letter-spacing:.32em;font-size:18px;padding-left:.32em}
footer .sub{font-family:var(--caps);text-transform:uppercase;letter-spacing:.3em;font-size:14px;color:var(--mute);margin-top:10px;padding-left:.3em}
footer .web{display:inline-block;font-family:var(--serif);font-style:italic;font-size:26px;margin-top:30px;text-decoration:none}
footer .fine{font-size:16px;line-height:1.8;color:var(--mute);margin-top:30px}
.foil{background:var(--sat);-webkit-background-clip:text;background-clip:text;color:transparent}

/* white "paper" sections inside the dark page */
.paper .row{border-color:var(--line)}
.paper .row p,.paper .row small{color:var(--ink)}
.paper .n,.dark .paper .n{background:var(--satd);-webkit-background-clip:text;background-clip:text;color:transparent}
.dark .paper h2 em,.dark .box h2 em{background:var(--satd);-webkit-background-clip:text;background-clip:text;color:transparent}
.box .kicker::after{background:var(--satd)}
.box p.kicker{font-size:16px;color:#000;max-width:none;margin-top:0}
section[id]{scroll-margin-top:86px}
/* 21 parishes: 3 columns (7 even rows) or 1 column, never an uneven last row */
@media (max-width:800px){.parishes{grid-template-columns:repeat(3,1fr)}}
@media (max-width:620px){.parishes{grid-template-columns:1fr}.parishes li{font-size:16px;letter-spacing:.2em}}

/* KLAS Desk log in */
.nav .login{display:inline-flex;align-items:center;gap:10px}
.desk-link{margin-top:34px}
.desk-link a{font-family:var(--caps);text-transform:uppercase;letter-spacing:.28em;font-size:15px;text-decoration:none;
  border-bottom:1px solid rgba(221,199,146,.6);padding-bottom:6px}
@media (max-width:900px){.nav .login{display:inline-flex}}
@media (max-width:900px){.nav a.login:not(.call){display:inline-flex}}
.nav{gap:30px}

/* The KLAS Standard */
.box .lead{font-size:clamp(21px,2vw,24px);line-height:1.6;color:var(--ink);max-width:56ch}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid var(--line)}
.pillars > div{padding:30px 28px 6px 0}
.pillars > div + div{padding-left:28px;border-left:1px solid var(--line)}
.pillars .n{display:block;margin-bottom:16px}
.pillars b{display:block;font-family:var(--caps);font-weight:normal;text-transform:uppercase;letter-spacing:.22em;font-size:18px;margin-bottom:10px}
.box .pillars p{font-size:19px;line-height:1.55;margin:0}
@media (max-width:800px){.pillars{grid-template-columns:1fr}.pillars > div,.pillars > div + div{padding:26px 0;border-left:0;border-bottom:1px solid var(--line)}.pillars > div:last-child{border-bottom:0}}
