/* Shared styles for Santarella service pages */
:root{
  --ink:#0a0f13; --ink-2:#10181e; --ink-3:#17222a;
  --text:#ecebe6; --muted:#9aa6ad; --line:rgba(236,235,230,.12);
  --stone:#d8c7a6; --mist:#9cc3d3;
  --paper:#efe9de; --paper-2:#e4dccd; --ink-on-paper:#1a1f22; --muted-on-paper:#545b5f;
  --serif:"Instrument Serif","Times New Roman",serif;
  --sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --pad:clamp(16px,4vw,56px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink-on-paper);font-family:var(--sans);font-size:17px;line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid #8a6f42;outline-offset:3px;border-radius:4px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{width:min(1180px,100%);margin:0 auto;padding:0 var(--pad)}
.eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:var(--stone)}

.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 24px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;transition:transform .18s var(--ease-out),background .25s,border-color .25s}
.btn:active{transform:scale(.97)}
.btn svg{width:18px;height:18px;flex:none}
.btn-primary{background:var(--stone);color:#15120c}
.btn-primary:hover{background:#e7d9bd}
.btn-ghost{border:1px solid rgba(236,235,230,.35);color:var(--text)}
.btn-ghost:hover{border-color:var(--text)}

/* nav */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px var(--pad);background:rgba(10,15,19,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);color:var(--text)}
.brand{display:flex;flex-direction:column;line-height:1;text-decoration:none}
.brand b{font-family:var(--serif);font-weight:400;font-size:26px}
.brand small{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:5px;font-weight:600}
.nav-links{display:flex;gap:26px;align-items:center;font-size:14px;font-weight:600}
.nav-links a{text-decoration:none;color:rgba(236,235,230,.78)}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--text)}
.nav-call{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:var(--stone);color:#15120c!important;font-weight:700}
.nav-call svg{width:15px;height:15px}
@media (max-width:980px){.nav-links a:not(.nav-call){display:none}}
@media (max-width:480px){.brand b{font-size:23px}.nav-call span{display:none}.nav-call{padding:12px}}

/* page hero */
.phero{position:relative;padding:150px 0 72px;color:var(--text);background:var(--ink);overflow:hidden;isolation:isolate}
.phero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;filter:brightness(.55) saturate(.85)}
.phero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,15,19,.92) 0%,rgba(10,15,19,.6) 60%,rgba(10,15,19,.35) 100%)}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:22px}
.crumbs a{text-decoration:none;color:var(--muted)}
.crumbs a:hover{color:var(--text)}
.phero h1{font-family:var(--serif);font-weight:400;font-size:clamp(44px,6.2vw,88px);line-height:.98;letter-spacing:-.015em;max-width:15ch}
.phero .lead{max-width:600px;margin-top:22px;font-size:clamp(17px,1.4vw,19px);color:rgba(236,235,230,.86)}
.phero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* trust strip */
.trust{background:var(--ink);color:var(--text);border-top:1px solid var(--line)}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid div{padding:20px 22px;border-left:1px solid var(--line);font-size:14px}
.trust-grid div:first-child{border-left:0;padding-left:0}
.trust-grid b{display:block;font-size:15px}
.trust-grid span{color:var(--muted)}
@media (max-width:820px){.trust-grid{grid-template-columns:1fr 1fr}.trust-grid div:nth-child(odd){border-left:0;padding-left:0}.trust-grid div:nth-child(n+3){border-top:1px solid var(--line)}}

/* body */
.body{padding:clamp(56px,7vw,96px) 0}
.body-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(32px,5vw,72px);align-items:start}
.article h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,3.4vw,46px);line-height:1.05;letter-spacing:-.01em;margin:48px 0 16px}
.article h2:first-child{margin-top:0}
.article h3{font-size:19px;font-weight:700;margin:28px 0 8px}
.article p{color:#33393c;margin-bottom:16px;max-width:68ch}
.article ul,.article ol{margin:6px 0 20px 0;padding-left:0;list-style:none;display:grid;gap:10px;max-width:68ch}
.article li{position:relative;padding-left:28px;color:#33393c}
.article ul li::before{content:"";position:absolute;left:4px;top:.7em;width:9px;height:9px;border-radius:50%;background:#8a6f42}
.article ol{counter-reset:n}
.article ol li{counter-increment:n}
.article ol li::before{content:counter(n);position:absolute;left:0;top:0;font-family:var(--serif);font-size:22px;line-height:1.2;color:#8a6f42}
.article strong{color:var(--ink-on-paper)}
.article a{color:#6e5530;font-weight:600}
.figure{margin:28px 0;border-radius:18px;overflow:hidden;aspect-ratio:16/9}
.figure img{width:100%;height:100%;object-fit:cover}
.callout{background:var(--paper-2);border-radius:18px;padding:24px 26px;margin:28px 0;max-width:68ch}
.callout p{margin:0}

/* sticky aside */
.aside{position:sticky;top:100px;background:var(--ink);color:var(--text);border-radius:22px;padding:28px}
.aside h2{font-family:var(--serif);font-weight:400;font-size:32px;line-height:1.05;margin-bottom:10px}
.aside p{color:var(--muted);font-size:15px;margin-bottom:18px}
.aside .btn{width:100%;justify-content:center;margin-bottom:10px}
.aside hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.aside .meta{font-size:14px;color:var(--muted);line-height:1.8}
.aside .meta b{color:var(--text);font-weight:600}
.status{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text)}
.status i{width:8px;height:8px;border-radius:50%;background:#7a8389}
.status.open i{background:#6fcf97;box-shadow:0 0 0 4px rgba(111,207,151,.18)}
@media (max-width:960px){.body-grid{grid-template-columns:1fr}.aside{position:static}}

/* faq */
.faq{background:var(--paper-2);padding:clamp(56px,7vw,96px) 0}
.faq h2{font-family:var(--serif);font-weight:400;font-size:clamp(36px,4vw,56px);line-height:1;margin-bottom:28px}
details{border-bottom:1px solid rgba(26,31,34,.16);max-width:860px}
details:first-of-type{border-top:1px solid rgba(26,31,34,.16)}
summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:18px;font-weight:700}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:24px;line-height:1;color:#8a6f42;transition:transform .3s var(--ease-out)}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 40px 22px 0;color:#3c4347}

/* related */
.related{padding:clamp(56px,7vw,96px) 0}
.related h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,3.4vw,46px);margin-bottom:24px}
.rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.rel-grid a{display:flex;flex-direction:column;gap:6px;padding:22px;border-radius:18px;background:#fff;text-decoration:none;border:1px solid rgba(26,31,34,.08);transition:transform .3s var(--ease-out),box-shadow .3s}
.rel-grid a:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(26,31,34,.1)}
.rel-grid b{font-size:17px}
.rel-grid span{font-size:14px;color:var(--muted-on-paper)}

/* closing cta */
.close{background:var(--ink);color:var(--text);padding:clamp(64px,8vw,110px) 0;text-align:center}
.close h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,5.4vw,80px);line-height:.98;letter-spacing:-.015em}
.close h2 em{color:var(--stone)}
.close p{color:var(--muted);margin:16px auto 28px;max-width:520px}
.close .cta{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}

/* footer */
footer.site{background:var(--ink);color:var(--muted);border-top:1px solid var(--line);padding:48px 0 120px;font-size:14px}
.foot-word{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(56px,10vw,140px);line-height:.85;color:var(--text);letter-spacing:-.03em}
.foot-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px clamp(24px,5vw,72px);margin-top:36px;padding-top:28px;border-top:1px solid var(--line)}
.foot-col{display:flex;flex-direction:column;gap:10px;min-width:0;font-size:15px}
.foot-col h4{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--stone);font-weight:700;margin-bottom:4px}
.foot-col a{text-decoration:none;color:rgba(236,235,230,.8)}
.foot-col a:hover{color:var(--stone)}
.foot-col .foot-big{font-family:var(--serif);font-size:30px;line-height:1.1;color:var(--text)}
.foot-col .foot-email{color:var(--text);font-weight:600;white-space:nowrap}
.foot-note{margin-top:32px;font-size:12.5px}
.foot-note a{color:var(--muted)}
@media (max-width:820px){.foot-cols{grid-template-columns:1fr 1fr}.foot-cols .foot-col:first-child{grid-column:1/-1}}
@media (max-width:420px){.foot-cols{grid-template-columns:1fr}}
/* mobile call bar */
.callbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;display:none;grid-template-columns:1fr 1fr 1fr;gap:6px;padding:6px;border-radius:20px;background:rgba(16,24,30,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);color:var(--text)}
.callbar a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 4px;border-radius:14px;text-decoration:none;font-size:12px;font-weight:700}
.callbar a svg{width:20px;height:20px}
.callbar a.main{background:var(--stone);color:#15120c}
@media (max-width:760px){.callbar{display:grid}}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
.article h3[id]{scroll-margin-top:100px}
.article h3[id]:target{color:#6e5530}
