/* ArchivioMemoriale - integrazione Persone, 09.10.2026 */
.topbar{overflow:visible}.am-header-thread{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0;opacity:.55}.am-header-thread svg{width:100%;height:100%;display:block}.am-header-thread path{fill:none;stroke:url(#amHeaderGold);stroke-width:1.15;stroke-linecap:round;vector-effect:non-scaling-stroke;animation:amThreadFloat 11s ease-in-out infinite alternate}.topbar>.brand,.topbar>.nav-toggle,.topbar>.nav{position:relative;z-index:2}@keyframes amThreadFloat{from{transform:translate3d(-1.5%,2px,0)}to{transform:translate3d(1.5%,-3px,0)}}
.area-badge{display:inline-flex;margin-left:8px;padding:4px 8px;border-radius:999px;border:1px solid rgba(241,202,120,.28);font-size:8px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#f2d28e;background:rgba(255,255,255,.06)}
.nav-pop{position:relative}.nav-pop>summary{list-style:none;cursor:pointer}.nav-pop>summary::-webkit-details-marker{display:none}.nav-pop-menu{position:absolute;right:0;top:calc(100% + 14px);width:310px;padding:10px;border-radius:18px;background:#fffdf8;border:1px solid rgba(30,90,82,.13);box-shadow:0 22px 60px rgba(4,28,36,.22);z-index:80}.nav-pop-menu:before{content:"";position:absolute;right:28px;top:-7px;width:14px;height:14px;background:#fffdf8;transform:rotate(45deg);border-left:1px solid rgba(30,90,82,.13);border-top:1px solid rgba(30,90,82,.13)}.nav-pop-menu a{display:grid!important;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:11px!important;border-radius:12px;color:#173a3d!important;text-decoration:none}.nav-pop-menu a:hover{background:#edf4ef}.nav-pop-menu a>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e5f1ed;color:#21675e}.nav-pop-menu small{display:block;margin-top:2px;color:#70807d;font-size:10px}.nav-area-switch{color:#f0ca79!important}.nav-separator{width:1px;height:18px;background:rgba(255,255,255,.18);margin:0 2px}

/* Portale */
.portal-gateway{background:linear-gradient(180deg,#082a37 0,#0c4350 34%,#f6f1e7 34%,#fffdf9 100%);overflow:hidden}.portal-hero{position:relative;min-height:510px;display:grid;place-items:center;padding:80px 26px 130px;color:#fff;text-align:center;background:radial-gradient(circle at 82% 18%,rgba(79,181,194,.18),transparent 24%),radial-gradient(circle at 18% 72%,rgba(226,179,76,.13),transparent 27%),linear-gradient(135deg,#072432,#0d4650 58%,#155b55)}.portal-hero-inner{position:relative;z-index:3;max-width:1000px}.portal-kicker{font-size:11px;font-weight:900;letter-spacing:.24em;text-transform:uppercase;color:#f2ca78}.portal-kicker.dark{color:#94661f}.portal-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,7vw,92px);line-height:.98;letter-spacing:-.05em;margin:16px 0 24px;color:#fff}.portal-hero h1 em{display:block;color:#f2cf84;font-weight:600}.portal-hero p{max-width:790px;margin:0 auto;color:#d3e7e9;font-size:17px;line-height:1.75}.portal-mini-nav{display:flex;justify-content:center;gap:12px;margin-top:28px}.portal-mini-nav a{color:#fff;text-decoration:none;font-weight:800}.portal-thread{position:absolute;inset:0;opacity:.58;pointer-events:none}.portal-thread svg{width:100%;height:100%}.portal-thread path{fill:none;stroke:url(#amPortalGold);stroke-width:1.05;vector-effect:non-scaling-stroke}.portal-thread-soft{opacity:.28}
.portal-choice{position:relative;z-index:5;max-width:1188px;margin:-76px auto 76px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-world{position:relative;overflow:hidden;isolation:isolate;min-height:560px;padding:42px 40px;border-radius:32px;display:flex;flex-direction:column;box-shadow:0 28px 70px rgba(5,35,40,.16);border:1px solid rgba(255,255,255,.18)}.portal-world:before{content:"";position:absolute;inset:0;z-index:-2}.portal-world-people{color:#f5fbfa}.portal-world-people:before{background:radial-gradient(circle at 82% 18%,rgba(120,211,219,.22),transparent 23%),radial-gradient(circle at 17% 80%,rgba(236,185,82,.14),transparent 27%),linear-gradient(145deg,#123d49,#185c59 58%,#0f4745)}.portal-world-animals{color:#17333b}.portal-world-animals:before{background:radial-gradient(circle at 86% 14%,rgba(104,189,205,.18),transparent 24%),radial-gradient(circle at 14% 84%,rgba(227,177,75,.17),transparent 28%),linear-gradient(145deg,#fffdf8,#e8f4ef 54%,#d9ede8)}.portal-world-glow{position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;bottom:-100px;background:radial-gradient(circle,rgba(255,214,128,.22),transparent 66%);pointer-events:none}.portal-world-head{display:flex;align-items:center;gap:13px}.portal-world-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid rgba(241,202,120,.48);background:rgba(255,255,255,.08);font-size:20px;color:#f2cf85}.portal-world-animals .portal-world-icon{background:#fff7e5;color:#9f6d1e;border-color:rgba(163,111,27,.22)}.portal-world-label{font-size:11px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;color:#f0ce87}.portal-world-animals .portal-world-label{color:#88601f}.portal-world h2{font-family:'Playfair Display',serif;font-size:clamp(38px,4vw,62px);line-height:1.02;letter-spacing:-.035em;margin:26px 0 18px;color:inherit}.portal-world p{font-size:16px;line-height:1.75;max-width:610px;color:#d7e8e9}.portal-world-animals p{color:#5e7375}.portal-feature-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 34px}.portal-feature-row span{padding:7px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.portal-world-animals .portal-feature-row span{background:rgba(24,87,78,.055);border-color:rgba(24,87,78,.12);color:#235f58}.portal-world-actions{margin-top:auto}.portal-primary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;border-radius:17px;text-decoration:none!important;font-weight:900;background:linear-gradient(135deg,#ffe6ac,#e4b45c 58%,#c8892d);color:#17333b!important;box-shadow:0 16px 34px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.55)}.portal-world-animals .portal-primary{background:linear-gradient(135deg,#216b5f,#164c46);color:#fff!important}.portal-quick-links{display:flex;gap:14px;justify-content:center;margin-top:15px}.portal-quick-links a{font-size:11px;font-weight:900;text-decoration:none;color:#f0d18e}.portal-world-animals .portal-quick-links a{color:#22665d}
.portal-search-switch{max-width:1188px;margin:0 auto 76px;padding:38px 42px;border-radius:30px;background:linear-gradient(145deg,#fffdf8,#f2ebdc);border:1px solid rgba(157,111,31,.16);box-shadow:0 20px 54px rgba(34,68,67,.09);display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:42px}.portal-search-switch h2{font-family:'Playfair Display',serif;font-size:clamp(34px,4vw,52px);line-height:1.04;margin:10px 0 14px;color:#183640}.portal-search-switch p{color:#6d7776}.portal-search-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}.portal-search-actions a{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;align-items:center;padding:18px;border-radius:18px;text-decoration:none;background:#fff;border:1px solid rgba(28,91,84,.11);box-shadow:0 10px 28px rgba(28,79,75,.06);color:#193d43}.portal-search-actions a>span{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e5f1ed;color:#1d6a5f}.portal-search-actions small{color:#7a8584;font-size:11px}.portal-final{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;padding:70px 26px;background:linear-gradient(120deg,#0d343f,#155c58);color:#fff;text-align:center}.portal-final>div{width:100%}.portal-final h2{font-family:'Playfair Display',serif;font-size:clamp(34px,4vw,58px);margin:10px auto 22px;max-width:900px;color:#fff}.portal-final-link{padding:13px 18px;border-radius:999px;border:1px solid rgba(250,216,147,.36);color:#fff;text-decoration:none;font-weight:900;background:rgba(255,255,255,.06)}

/* Persone */
body.route-people,body.route-people-search{background:linear-gradient(180deg,#082a37 0,#0e4650 19%,#f8f4ea 19%,#fffdf8 100%)}.people-hub{overflow:hidden}.people-hero{position:relative;padding:88px clamp(22px,7vw,110px) 110px;background:radial-gradient(circle at 78% 18%,rgba(92,190,203,.18),transparent 25%),radial-gradient(circle at 20% 76%,rgba(226,179,76,.13),transparent 28%),linear-gradient(135deg,#082633,#0d4850 58%,#145b55);color:#fff;text-align:center}.people-hero>*{position:relative;z-index:2}.people-hero h1{max-width:980px;margin:14px auto 18px;font-family:'Playfair Display',serif;font-size:clamp(44px,6.2vw,82px);line-height:1;letter-spacing:-.04em;color:#fff}.people-hero h1 em{display:block;color:#f3cf84;font-weight:600}.people-hero p{max-width:760px;margin:0 auto;color:#d5e7e9;font-size:17px;line-height:1.75}.people-hero-search{max-width:760px;margin:30px auto 0;display:grid;grid-template-columns:1fr auto;gap:10px;padding:8px;border-radius:19px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(10px)}.people-hero-search input{min-width:0;border:0!important;background:#fff!important;border-radius:13px!important;padding:15px 17px!important;box-shadow:none!important}
.people-latest,.people-services-section{padding-top:56px;padding-bottom:64px}.people-services-section{padding-top:0}.people-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.people-section-heading h2{font-family:'Playfair Display',serif;font-size:clamp(34px,4vw,52px);margin:7px 0 0;color:#183b42}.people-section-heading>a{font-weight:900;color:#1f665e;text-decoration:none}.people-obit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.people-obit-card{overflow:hidden;border-radius:22px;background:#fff;border:1px solid rgba(29,92,84,.12);box-shadow:0 16px 42px rgba(22,71,67,.09);text-decoration:none;color:#183a42;transition:.2s transform,.2s box-shadow}.people-obit-card:hover{transform:translateY(-3px);box-shadow:0 22px 50px rgba(22,71,67,.13)}.people-obit-media{height:210px;display:grid;place-items:center;background:linear-gradient(145deg,#edf4ef,#f7f0df);overflow:hidden}.people-obit-media img{width:100%;height:100%;object-fit:contain}.people-obit-media span{font-size:38px;color:#b27b28}.people-obit-body{padding:20px}.people-obit-place{display:block;color:#8e682b;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.people-obit-body h3{font-family:'Playfair Display',serif;font-size:25px;line-height:1.08;margin:9px 0 8px}.people-obit-body p{margin:0 0 14px;color:#70807e}.people-obit-body b{color:#1d665d}.people-tool-grid-clean{position:static;margin-top:0}.people-tool-grid{padding-bottom:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.people-tool-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;min-height:150px;padding:24px;border-radius:22px;background:#fff;border:1px solid rgba(25,87,83,.12);box-shadow:0 18px 46px rgba(28,70,68,.09);text-decoration:none;color:#183a42}.people-tool-card>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#e8f4ef,#fff8e7);color:#9b6b1e;font-size:20px}.people-tool-card h2{font-family:'Playfair Display',serif;font-size:25px;margin:0 0 7px}.people-tool-card p{margin:0;color:#6d7b7b;font-size:13px;line-height:1.55}.people-tool-card>b{font-size:22px;color:#b17b25}

/* Ricerca persone: niente maschere che attraversano i contenuti */
.people-search-hero{position:relative;overflow:hidden;isolation:isolate}.people-search-page{padding-bottom:72px}.people-search-card{position:relative;z-index:3;margin:-34px auto 0;padding:28px;overflow:hidden;isolation:isolate;border-radius:26px;background:#fff;border:1px solid rgba(28,91,84,.12);box-shadow:0 20px 54px rgba(22,66,65,.12)}.people-search-card:before,.people-search-card:after{display:none!important}.people-search-form{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;gap:10px}.people-search-form input{min-width:0;border:1px solid #c8dada!important;border-radius:15px!important;padding:16px 18px!important;background:#fff!important;box-shadow:none!important}.people-search-links{position:relative;z-index:2;display:flex;gap:20px;margin-top:16px}.people-search-links a{font-weight:900;color:#1d665d;text-decoration:none}.people-results{margin-top:42px}.people-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.people-result-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:20px;border-radius:18px;background:#fff;border:1px solid rgba(28,91,84,.11);box-shadow:0 12px 30px rgba(28,79,75,.07);text-decoration:none;color:#193d43}.people-result-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#edf5f0;color:#a16d1d}.people-result-card h3{margin:0 0 5px;font-family:'Playfair Display',serif;font-size:22px}.people-result-card p,.people-result-card small{margin:0;color:#73807f}.people-result-card>b{font-size:20px;color:#ad7824}.people-empty{padding:34px;border-radius:24px;background:#fff;border:1px solid rgba(28,91,84,.1);box-shadow:0 12px 34px rgba(28,79,75,.06);text-align:center}.people-empty h3,.people-empty h2{font-family:'Playfair Display',serif;font-size:30px;margin:0 0 8px;color:#193d43}.people-empty p{color:#71807f;margin:0 0 18px}

/* Dettaglio necrologio */
.people-detail-page{padding-top:38px;padding-bottom:78px}.people-breadcrumb{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:18px;font-size:12px;color:#75807f}.people-breadcrumb a{color:#1d665d;text-decoration:none;font-weight:800}.people-detail-card{display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:0;overflow:hidden;border-radius:30px;background:#fff;border:1px solid rgba(27,88,82,.12);box-shadow:0 24px 64px rgba(23,67,65,.12)}.people-detail-media{min-height:520px;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#e9f2ed,#f7efdf)}.people-detail-media img{width:100%;height:100%;max-height:650px;object-fit:contain}.people-detail-media>span{font-size:64px;color:#b17c2b}.people-detail-content{padding:clamp(28px,5vw,60px)}.people-detail-content h1{font-family:'Playfair Display',serif;font-size:clamp(42px,6vw,72px);line-height:1;margin:10px 0 20px;color:#173a41}.people-detail-meta{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:26px}.people-detail-meta span{padding:7px 10px;border-radius:999px;background:#edf5f0;color:#2b625c;font-size:11px;font-weight:800}.people-detail-text{font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.8;color:#536b6b;white-space:normal}.people-detail-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}

/* Costi persone */
.people-cost-page{padding-bottom:76px}.people-cost-card{position:relative;z-index:3;margin-top:-32px;display:grid;grid-template-columns:1fr .85fr;gap:30px;padding:34px;overflow:visible;border-radius:28px;background:#fff;border:1px solid rgba(28,91,84,.12);box-shadow:0 20px 54px rgba(22,66,65,.12)}.people-cost-card:before,.people-cost-card:after{display:none!important}.people-cost-form{display:grid;gap:16px}.people-cost-form label,.animal-price-calc label{display:grid;gap:7px}.people-cost-form label>span,.animal-price-calc label>span,.people-autocomplete label>span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#436d68}.people-cost-form select,.people-cost-form input,.animal-price-calc select,.animal-price-calc input{width:100%;border:1px solid #c8dada;border-radius:14px;background:#fff;padding:14px 15px;box-shadow:none}.people-cost-actions{display:flex;gap:10px;flex-wrap:wrap}.people-autocomplete{position:relative}.people-autocomplete-results{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;padding:7px;border-radius:15px;background:#fff;border:1px solid rgba(29,90,83,.12);box-shadow:0 18px 46px rgba(20,60,60,.18);max-height:270px;overflow:auto}.people-autocomplete-results button{display:block;width:100%;padding:10px 12px;border:0;border-radius:9px;background:transparent;text-align:left;cursor:pointer;color:#173a41}.people-autocomplete-results button:hover{background:#edf5f0}.people-cost-output{display:flex;align-items:center;gap:18px;min-height:180px;padding:26px;border-radius:22px;background:linear-gradient(145deg,#0f4149,#176059);color:#fff}.people-cost-symbol{display:grid;place-items:center;flex:0 0 56px;width:56px;height:56px;border-radius:50%;background:linear-gradient(145deg,#ffe4a3,#d69d3e);color:#173a41;font-size:26px;font-weight:900}.people-cost-output strong{font-family:'Playfair Display',serif;font-size:25px}.people-cost-output p{margin:6px 0 0;color:#cee1df}.people-cost-price{font-size:clamp(27px,4vw,42px);font-weight:900;color:#f5d48d;margin-top:8px}.people-cost-note{margin-top:24px;padding:28px 32px;border-radius:22px;background:#f4eee2;border:1px solid rgba(162,116,37,.14)}.people-cost-note h2{font-family:'Playfair Display',serif;margin:0 0 8px;color:#193a42}.people-cost-note p{margin:0;color:#687978}

/* Costi animali */
.animal-price-page{padding-bottom:76px}.animal-price-calc{margin-top:-30px;margin-bottom:32px;padding:28px;border-radius:26px;background:#fff;border:1px solid rgba(28,91,84,.12);box-shadow:0 18px 48px rgba(22,66,65,.1);display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end}.animal-price-calc .people-cost-output{grid-column:1/-1;min-height:125px}.animal-price-grid{margin-top:0}

@media(max-width:980px){.portal-choice{grid-template-columns:1fr;max-width:760px}.portal-search-switch{margin-left:20px;margin-right:20px;grid-template-columns:1fr}.people-obit-grid,.people-tool-grid{grid-template-columns:1fr 1fr}.people-results-grid{grid-template-columns:1fr}.people-detail-card,.people-cost-card{grid-template-columns:1fr}.people-detail-media{min-height:360px}.animal-price-calc{grid-template-columns:1fr 1fr}.animal-price-calc .btn{grid-column:1/-1}}
@media(max-width:700px){.area-badge{display:none}.portal-hero{min-height:470px;padding:72px 20px 100px}.portal-choice{padding-left:14px;padding-right:14px}.portal-world{padding:28px 24px;border-radius:26px;min-height:490px}.portal-search-switch{padding:28px 22px}.portal-search-actions,.people-obit-grid,.people-tool-grid{grid-template-columns:1fr}.nav-pop{width:100%}.nav-pop>summary{text-align:center;padding:10px}.nav-pop-menu{position:static;margin-top:8px;width:auto}.people-hero{padding:70px 20px 92px}.people-hero-search,.people-search-form{grid-template-columns:1fr}.people-search-page,.people-latest,.people-services-section,.people-detail-page,.people-cost-page{padding-left:14px;padding-right:14px}.people-search-card,.people-cost-card{padding:22px}.people-detail-content{padding:28px 22px}.animal-price-calc{grid-template-columns:1fr;padding:22px}.am-header-thread{opacity:.35}}
@media(prefers-reduced-motion:reduce){.am-header-thread path{animation:none!important}}
