/* Shared visual layer, extending the approved Mariana homepage to all routes.
   Forms retain their IDs, validation, consent, payment and submission behaviour. */
.site-refined{--r:20px;--r-sm:12px;--glass:color-mix(in srgb,var(--raised) 76%,transparent);--glass-line:color-mix(in srgb,var(--raised) 72%,var(--line));--shadow:0 12px 38px -24px rgba(8,36,59,.23);--shadow-lift:0 18px 42px -23px rgba(8,36,59,.3)}
.site-refined #main{background:radial-gradient(ellipse 65% 700px at 3% 0%,rgba(127,192,184,.16),transparent 80%),radial-gradient(ellipse 60% 580px at 98% 5%,rgba(240,168,104,.11),transparent 75%),var(--surface);padding-bottom:1px}
.site-refined .ph{padding-block:clamp(1.25rem,3.5vw,3rem) 0;border:0}
.site-refined .ph>.wrap{padding:clamp(1.45rem,4vw,3rem);border:1px solid var(--glass-line);border-radius:28px;background:var(--raised);background:var(--glass);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.22);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.site-refined .ph h1{font-weight:500;font-size:clamp(2rem,4.8vw,3.7rem);line-height:1.12;letter-spacing:-.04em;max-width:24ch}
.site-refined .ph h1 em{font-weight:400;color:var(--support)}
.site-refined .ph .lede{max-width:62ch;font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.75;margin-top:1.2rem}
.site-refined .crumbs{font-size:.78rem;gap:.7rem;margin-bottom:.75rem}
.site-refined .crumbs>a{color:var(--support)}
.site-refined .pad{padding-block:clamp(2.75rem,5.5vw,4.8rem)}
.site-refined h2{font-weight:500}
.site-refined .btn{border-radius:100px;padding-inline:1.5rem}
.site-refined .btn--accent{background:#B94F0A;color:#fff;box-shadow:0 6px 18px rgba(166,75,8,.12)}
.site-refined .btn--accent:hover{background:#983D06}
.site-refined :is(.card,.sum,.way,.camp,.story,.post){background:var(--raised);background:var(--glass);border-color:var(--glass-line);box-shadow:var(--shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.site-refined .way--main{border-color:var(--support);border-width:1.5px}
.site-refined .sum{padding:clamp(1.25rem,3vw,2.2rem)}
.site-refined .sum>h3{font-family:var(--serif);font-size:1.55rem;font-weight:500;margin-bottom:1.4rem}
.site-refined .ic{border-radius:50%}
.site-refined .sunk{background:color-mix(in srgb,var(--support-soft) 45%,transparent)}
.site-refined .panel{background:radial-gradient(ellipse at 90% 0,rgba(127,192,184,.12),transparent 65%),var(--panel)}
.site-refined .inp{background:var(--raised);background:color-mix(in srgb,var(--raised) 88%,transparent);border-color:color-mix(in srgb,var(--ink-2) 25%,var(--raised));border-radius:12px}
.site-refined .inp:focus{border-color:var(--support);box-shadow:0 0 0 3px color-mix(in srgb,var(--support) 15%,transparent)}
.site-refined .inp[aria-invalid="true"]{border-color:var(--accent-ink)}
.site-refined .field{margin-bottom:1.25rem}
.site-refined .field label{line-height:1.6}
.site-refined .opt{border-radius:14px;background:var(--raised);background:color-mix(in srgb,var(--raised) 75%,transparent);border-color:color-mix(in srgb,var(--ink-2) 23%,var(--raised));min-height:58px;transition:border-color .18s,background .18s,box-shadow .18s}
.site-refined .opt:hover{border-color:var(--support);box-shadow:0 0 0 1px var(--support)}
.site-refined .opt[aria-pressed="true"]{background:#136F68;border-color:#136F68;color:#fff;box-shadow:0 4px 12px rgba(19,111,104,.12)}
.site-refined .opt[aria-pressed="true"] small{color:#fff;opacity:1}
.site-refined #don .opts--2{padding:5px;background:var(--sunken);border:1px solid var(--line);border-radius:20px;gap:5px}
.site-refined #don .opts--2 .opt:not([aria-pressed="true"]){border-color:transparent;background:transparent}
.site-refined #don [data-suma="alta"]{grid-column:1/-1;min-height:46px;font-size:.9rem}
.site-refined #don-btn{min-height:56px;font-size:1.05rem}
.site-refined #don .small{font-size:.84rem;line-height:1.7}
.site-refined .donation-photo{position:relative;border:1px solid var(--glass-line)}
.site-refined .donation-photo img{width:100%;aspect-ratio:1.5;object-fit:cover;object-position:center 45%}
.site-refined .donation-photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;border-radius:13px;padding:.65rem 1rem;background:rgba(8,36,59,.85);border:1px solid rgba(255,255,255,.23);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;justify-content:space-between;align-items:center;gap:.7rem;flex-wrap:wrap}
.site-refined .donation-photo figcaption b{font-family:var(--serif);font-size:1.25rem;font-weight:500}
.site-refined .donation-photo figcaption a{font-size:.73rem;min-height:32px;display:inline-flex;align-items:center;gap:.45rem;text-decoration:underline;text-underline-offset:4px}
.site-refined .iban{font-size:.87rem;border-radius:12px;gap:.5rem;background:color-mix(in srgb,var(--support-soft) 42%,var(--raised))}
.site-refined .iban>span{overflow-wrap:anywhere;min-width:0}
.site-refined .iban button{border-radius:100px;min-height:44px;padding-inline:1rem}
.site-refined .note{border-left-width:3px;border-radius:0 14px 14px 0;line-height:1.75}
.site-refined .acc{border-top:0}
.site-refined .acc details{padding:0 1.15rem;border:1px solid var(--line);border-radius:15px;background:var(--raised);background:var(--glass);margin-bottom:.65rem}
.site-refined .acc details[open]{border-color:color-mix(in srgb,var(--support) 45%,var(--line))}
.site-refined .file{border-radius:12px;min-width:0}
.site-refined .file input{width:100%;min-width:0;max-width:100%}
.site-refined .prose{line-height:1.85}
.site-refined :is(.prose,.story-body,.card p){overflow-wrap:break-word}
.site-refined .fig figcaption{padding:.85rem 1.1rem}
.site-refined .ft{background:radial-gradient(ellipse at 15% 0,rgba(127,192,184,.1),transparent 60%),var(--panel)}
/* Consent stays in document flow, including during checkout: it never covers a field. */
.site-refined .ck{position:relative;inset:auto;z-index:auto;width:min(var(--maxw),100% - var(--gutter)*2);max-width:none;margin:.65rem auto 0;padding:.65rem .9rem;gap:.75rem;border-radius:14px;background:var(--raised);box-shadow:none;align-items:center;flex-wrap:nowrap}
.site-refined .ck__copy{flex:1 1 auto;min-width:0}
.site-refined .ck p{margin:0;font-size:.8rem;line-height:1.5}
.site-refined .ck__details{margin-top:.2rem;font-size:.78rem;color:var(--ink-2)}
.site-refined .ck__details summary{cursor:pointer;width:fit-content;text-decoration:underline;text-underline-offset:3px;padding:.1rem 0;min-height:24px}
.site-refined .ck__details p{padding:.45rem 0 0;max-width:80ch}
.site-refined .ck .b{flex:0 0 auto;gap:.5rem;flex-wrap:nowrap}
.site-refined .ck .btn{min-height:44px;padding:.45rem .85rem;font-size:.8rem;white-space:nowrap;background:var(--sunken);color:var(--ink);border:1px solid var(--line);box-shadow:none}
.site-refined .ck .btn:hover{border-color:var(--support);background:var(--support-soft)}
@media(max-width:600px){.site-refined .ck{width:calc(100% - 1rem);padding:.6rem .7rem;gap:.45rem;flex-direction:column;align-items:stretch;margin:.5rem auto}.site-refined .ck__copy{flex:none}.site-refined .ck p{font-size:.78rem;line-height:1.45}.site-refined .ck .b{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.site-refined .ck .btn{padding:.45rem .4rem;font-size:.78rem}}
/* Do not clip or blur the embedded Stripe frame. Existing mobile payment rules win. */
.site-refined #plata{backdrop-filter:none;-webkit-backdrop-filter:none}
.site-refined #plata>div:first-child{flex-wrap:wrap}
@media(max-width:900px){.site-refined .ph>.wrap{border-radius:22px}.site-refined .split{gap:1.5rem}.site-refined .sum{padding:1.3rem}.site-refined.plateste #plata{padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}.site-refined.plateste .pad{padding-top:0}}
@media(max-width:440px){.site-refined .hd__in{gap:.3rem}.site-refined .hd .logo{gap:.45rem;min-width:0}.site-refined .hd .logo svg{width:31px;height:31px}.site-refined .hd .logo__n{font-size:.82rem}.site-refined .hd .logo__s{font-size:.5rem;letter-spacing:.07em}.site-refined .hd .tema,.site-refined .hd .burger{flex:0 0 40px;width:40px;height:44px}.site-refined .hd .tema{margin-left:auto}.site-refined .hd .burger{margin-left:0}.site-refined .ph>.wrap{padding:1.25rem}.site-refined .ph h1{font-size:2.05rem}.site-refined .opts .opt{padding:.6rem .45rem;font-size:.93rem}.site-refined .donation-photo figcaption{left:10px;right:10px;bottom:10px}.site-refined .btn{padding-inline:1.15rem}}
@media(max-width:360px){.site-refined .hd .logo{flex:1 1 auto;gap:.35rem}.site-refined .hd .logo svg{width:26px;height:26px}.site-refined .hd .logo__n{font-size:.74rem;max-width:135px;line-height:1.12}.site-refined .hd .logo__s{font-size:.43rem;letter-spacing:.04em}.site-refined .hd__in{gap:0}.site-refined .hd .tema{margin-left:0}}
@media(prefers-reduced-motion:reduce){.site-refined .opt,.site-refined .btn{transition:none}}
@media print{.site-refined #main,.site-refined .ph>.wrap,.site-refined .sum,.site-refined .card{background:#fff;box-shadow:none;backdrop-filter:none;color:#000}}
@media(max-width:900px){
  .site-refined .split>*,.site-refined .opts>*{min-width:0}
  .site-refined .opts>.card{overflow-wrap:anywhere}
  .site-refined.plateste .pad>.wrap{width:100%;max-width:100%;margin-inline:0}
  .site-refined.plateste #checkout{padding:0 .25rem}
  .site-refined.plateste #plata-inapoi{min-height:44px;display:inline-flex;align-items:center}
  .site-refined.plateste #plata>div:first-child{align-items:center;padding:.35rem 1rem}
  .site-refined .inp{font-size:16px}
}
