/* VISIRA — visirashop.com · v3 · one stylesheet, no build step */
:root{
  --bg-base:#EFE9DF;--bg-card:#F7F3EC;--ink:#2B2B2B;--ink-soft:#4A4744;--ink-mute:#6B6560;
  --rose:#D8A0A0;--coral:#D98E7E;--sage:#9CAF97;--sage-deep:#6F8269;--line:#DDD5C8;
  --col:620px;--gap:64px;color-scheme:light;
}
@media(min-width:760px){:root{--gap:96px}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg-base);color:var(--ink-soft);font:400 19px/1.65 Inter,system-ui,-apple-system,sans-serif}
@media(min-width:760px){body{font-size:20px}}
h1,h2,h3{font-family:Lora,Georgia,serif;font-weight:500;color:var(--ink);letter-spacing:-.01em;margin:0 0 16px}
h1{font-size:34px;line-height:1.2}h2{font-size:26px;line-height:1.3}h3{font-size:21px;line-height:1.35}
@media(min-width:760px){h1{font-size:44px;line-height:1.15}h2{font-size:30px}h3{font-size:22px}}
p,li{max-width:34rem}p{margin:0 0 16px}
a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--rose);text-underline-offset:3px}
a:hover{text-decoration-color:var(--ink)}
:focus-visible{outline:3px solid var(--sage-deep);outline-offset:3px}
img{display:block;max-width:100%;height:auto}
small,.small{font-size:17px;line-height:1.55;color:var(--ink-mute)}
.wrap{max-width:var(--col);margin:0 auto;padding:0 20px}
section{padding:var(--gap) 0 0}
main>section:last-of-type{padding-bottom:var(--gap)}

/* section marker — the only decoration */
h2::before{content:"";display:block;width:40px;height:3px;background:var(--rose);margin-bottom:16px}
.no-mark::before{display:none}

/* stamp */
.stamp{display:block;font:600 13px/1 Inter,system-ui,sans-serif;letter-spacing:.12em;color:var(--rose);text-transform:uppercase;margin-bottom:16px}

/* header / nav — brand pages only */
.site-head{padding:20px 0 0}
.site-head .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand svg{width:28px;height:28px;flex:none}
.brand .word{font:500 28px/1 Lora,Georgia,serif;letter-spacing:.06em}
.brand .desc{display:block;font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.18em;color:var(--ink-mute);margin-top:6px}
.nav{display:flex;align-items:center;gap:16px;list-style:none;margin:0;padding:0}
.nav a{text-decoration:none;font:600 17px/1 Inter,system-ui,sans-serif;padding:14px 4px;min-height:48px;display:inline-flex;align-items:center}
@media(max-width:759px){.site-head .wrap{flex-direction:column;align-items:flex-start}.nav{width:100%;justify-content:space-between;gap:8px}.nav a{padding:14px 2px}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 26px;border-radius:4px;font:600 19px/1 Inter,system-ui,sans-serif;text-decoration:none;border:1.5px solid var(--ink);background:var(--ink);color:var(--bg-base)}
.btn:hover{background:#111;border-color:#111}
.btn-2{background:transparent;color:var(--ink)}
.btn-2:hover{background:var(--bg-card)}
.btn-sm{min-height:48px;padding:12px 18px;font-size:17px}
.btn .arrow{font-family:Inter,system-ui,sans-serif}
.cta-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:24px}
.cta-row+.small{margin-top:16px}

/* hero */
.hero-img{width:100%;height:44vh;object-fit:cover;background:var(--bg-card)}
@media(min-width:760px){.hero-img{height:56vh}}
.hero{padding-top:40px}
.hero h1{margin-bottom:20px}

/* cards */
.card{background:var(--bg-card);border:1px solid var(--line);border-radius:4px;padding:24px;margin:0 0 16px}
.card h3{margin-bottom:8px}.card p:last-child{margin:0}
.cert{border-left:3px solid var(--sage)}
.cert h3{font-family:Lora,Georgia,serif}

/* compare table */
table{width:100%;border-collapse:collapse;margin:8px 0 16px;font-size:18px}
th,td{text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid var(--line)}
th{font:500 19px/1.3 Lora,Georgia,serif;color:var(--ink);border-bottom:2px solid var(--line)}
td:first-child,th:first-child{width:34%;color:var(--ink-mute);font-family:Inter,system-ui,sans-serif;font-weight:600;font-size:16px;letter-spacing:.02em}
tbody tr td:last-child{color:var(--ink)}
.foot{color:var(--ink-mute);font-size:17px;line-height:1.55}

/* made-for band */
.band{text-align:center;font-family:Lora,Georgia,serif;font-size:21px;color:var(--ink);padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band span{white-space:nowrap}.band i{font-style:normal;color:var(--rose);padding:0 12px}

/* details */
details{border-top:1px solid var(--line)}
details:last-of-type{border-bottom:1px solid var(--line)}
summary{cursor:pointer;list-style:none;padding:18px 0;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px;font:500 21px/1.35 Lora,Georgia,serif;color:var(--ink)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:400 26px/1 Inter,system-ui,sans-serif;color:var(--rose);flex:none}
details[open] summary::after{content:"–"}
details p{margin:0 0 20px}

/* lists */
ul.plain{padding-left:20px}ol{padding-left:22px}li{margin-bottom:8px}

/* forms (guarantee only) */
.field{margin:0 0 20px}
label{display:block;font:600 17px/1.4 Inter,system-ui,sans-serif;color:var(--ink);margin-bottom:8px}
input[type=text],input[type=email],input[type=date]{width:100%;min-height:52px;padding:12px 14px;font:400 19px/1.4 Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg-card);border:1.5px solid var(--line);border-radius:4px}
.check{display:flex;gap:12px;align-items:flex-start}
.check input{width:24px;height:24px;margin:4px 0 0;flex:none;accent-color:var(--ink)}
.check label{font-weight:400;margin:0}

/* footer */
.site-foot{border-top:1px solid var(--line);margin-top:var(--gap);padding:40px 0 48px;font-size:17px;line-height:1.55;color:var(--ink-mute)}
.site-foot ul{list-style:none;margin:0 0 20px;padding:0;display:flex;flex-wrap:wrap;gap:4px 24px}
.site-foot a{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;min-height:48px}
.site-foot a:hover{text-decoration:underline;text-decoration-color:var(--rose)}
.site-foot p{margin:0 0 6px}

/* /care header — no nav */
.care-head{text-align:center;padding:40px 0 0}
.care-head .brand{justify-content:center;flex-direction:column;gap:8px}
.care-head .brand svg{width:32px;height:32px}
.care-head .desc{margin-top:0}
.path{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg-card);border:1px solid var(--line);border-radius:4px;padding:12px 16px;display:inline-block;font-size:17px;margin:0 0 20px}

/* 404 */
.center{text-align:center;padding-top:96px}
.center p{margin-left:auto;margin-right:auto}
.center .cta-row{justify-content:center}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
