:root{color-scheme:light;--bg:#eef7fb;--panel:#fff;--panel-strong:#fff;--ink:#0f2335;--muted:#5f7280;--line:#d9e8ef;--accent:#ff6b4a;--accent-dark:#d94f32;--gold:#f7b731;--green:#2fbf9b;--blue:#1565c0;--navy:#071b33;--cyan:#31c5f4;--mint:#b9f6d8;--shadow:0 22px 70px rgba(10,38,71,.12)}.requests-panel{overflow-x:hidden}.requests-table{table-layout:fixed}.requests-table td,.requests-table th{padding-left:8px;padding-right:8px;overflow-wrap:anywhere;vertical-align:top}.requests-table td:first-child,.requests-table th:first-child{width:78px}.requests-table td:nth-child(2),.requests-table th:nth-child(2){width:110px}.requests-table td:nth-child(3),.requests-table th:nth-child(3){width:150px}.requests-table td:nth-child(4),.requests-table th:nth-child(4){width:175px}.requests-table td:nth-child(5),.requests-table th:nth-child(5){width:150px}.requests-table td:nth-child(7),.requests-table th:nth-child(7){width:130px}.requests-table td:nth-child(8),.requests-table th:nth-child(8){width:190px}.requests-table .request-details-card{max-width:none;min-width:0;font-size:14px}.requests-table .request-detail-line{grid-template-columns:96px minmax(0,1fr);gap:8px}.requests-table .status-actions{min-width:0;max-width:190px;gap:6px}.requests-table .status-actions .button{width:100%;justify-content:center;padding:9px 10px;line-height:1.15;text-align:center;white-space:normal}@media (max-width:1180px){.requests-table,.requests-table tbody,.requests-table td,.requests-table thead,.requests-table tr{display:block;width:100%!important}.requests-table thead{display:none}.requests-table tr{border:1px solid var(--line);border-radius:22px;margin:0 0 14px;padding:14px;background:hsla(0,0%,100%,.68)}.requests-table td{border-bottom:1px solid var(--line);padding:10px 0}.requests-table td:last-child{border-bottom:0}.requests-table td:before{content:attr(data-label);display:block;margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.requests-table .status-actions{max-width:none}}.requests-panel .requests-table,.requests-panel .requests-table tbody,.requests-panel .requests-table td,.requests-panel .requests-table thead,.requests-panel .requests-table tr{display:block;width:100%!important}.requests-panel .requests-table thead{display:none}.requests-panel .requests-table tr{border:1px solid var(--line);border-radius:24px;margin:0 0 16px;padding:16px;background:hsla(0,0%,100%,.74)}.requests-panel .requests-table td{border-bottom:1px solid var(--line);padding:11px 0}.requests-panel .requests-table td:last-child{border-bottom:0}.requests-panel .requests-table td:before{content:attr(data-label);display:block;margin-bottom:6px;color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.requests-panel .requests-table .request-detail-line{grid-template-columns:minmax(118px,170px) minmax(0,1fr)}.requests-panel .requests-table .status-actions{max-width:none}.requests-panel .requests-table .status-actions .button{width:auto;min-width:150px}.dashboard-card-table{table-layout:fixed}.dashboard-card-table td,.dashboard-card-table th{overflow-wrap:anywhere;vertical-align:top}@media (max-width:760px){.dashboard-card-table,.dashboard-card-table tbody,.dashboard-card-table td,.dashboard-card-table thead,.dashboard-card-table tr{display:block;width:100%!important}.dashboard-card-table thead{display:none}.dashboard-card-table tr{border:1px solid var(--line);border-radius:20px;margin:0 0 12px;padding:14px;background:hsla(0,0%,100%,.72)}.dashboard-card-table td{border-bottom:1px solid var(--line);padding:9px 0}.dashboard-card-table td:last-child{border-bottom:0}.dashboard-card-table td:before{content:attr(data-label);display:block;margin-bottom:4px;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}}*{box-sizing:border-box}body,html{overflow-x:hidden}body{margin:0;background:radial-gradient(circle at 12% 0,rgba(49,197,244,.22),transparent 30rem),radial-gradient(circle at 92% 8%,rgba(185,246,216,.34),transparent 24rem),linear-gradient(135deg,#f7fbff,#eaf6f8 45%,#f4fbf4);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}.shell{display:grid;grid-template-columns:300px 1fr;min-height:100vh}.sidebar{background:radial-gradient(circle at 20% 0,rgba(49,197,244,.25),transparent 16rem),linear-gradient(180deg,#071b33,#0c2c4d 58%,#0f3c55);color:#f5fbff;padding:28px 20px}.brand{display:grid;grid-gap:8px;gap:8px;margin-bottom:28px}.brand strong{font-size:22px}.brand span,.nav small{color:#b8d4e4}.brand small{display:block;color:#dceef7;line-height:1.35;overflow-wrap:anywhere}.nav{display:grid;grid-gap:10px;gap:10px}.nav a{border:1px solid hsla(0,0%,100%,.11);border-radius:18px;padding:12px 14px;background:hsla(0,0%,100%,.07)}.nav a:hover{background:rgba(49,197,244,.18)}.main{padding:34px}.breadcrumb-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;max-width:100%;margin:0 0 18px;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:hsla(0,0%,100%,.72);box-shadow:0 10px 30px rgba(10,38,71,.06);color:var(--muted);font-size:14px;font-weight:800}.breadcrumb-bar a{color:var(--ink)}.breadcrumb-bar a:hover,.breadcrumb-bar strong{color:var(--accent-dark)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px}.eyebrow{color:var(--accent-dark);font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,48px);line-height:1;margin-bottom:10px}.muted{color:var(--muted)}.grid{display:grid;grid-gap:18px;gap:18px}.grid.cards{grid-template-columns:repeat(4,minmax(170px,1fr))}.grid.two{grid-template-columns:1.2fr .8fr}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin:18px 0}.stat{border:1px solid var(--line);border-radius:20px;background:hsla(0,0%,100%,.72);padding:14px}.stat span{display:block;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.stat strong{display:block;font-size:28px;margin-top:6px}.stat small{display:block;color:var(--muted);margin-top:4px}.filters-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,.35fr) minmax(150px,.35fr) auto;grid-gap:12px;gap:12px;align-items:end;margin:18px 0}.card,.panel{background:hsla(0,0%,100%,.86);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);padding:22px;overflow-x:auto}.card strong{display:block;font-size:clamp(24px,2.4vw,32px);line-height:1.2;margin:6px 0;overflow-wrap:anywhere}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:0;background:linear-gradient(135deg,var(--accent),#ff8a5c);color:#fff;padding:12px 18px;font-weight:800}.button.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.button.danger{background:linear-gradient(135deg,#9f2f28,#d84b3a);color:#fff}.quick-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.stat-grid.compact{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}table{width:100%;border-collapse:collapse}td,th{border-bottom:1px solid var(--line);padding:13px 10px;text-align:left;vertical-align:top}th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.badge,th{font-size:12px}.badge{display:inline-flex;max-width:100%;border-radius:999px;padding:6px 10px;background:#e7f2f7;color:#275066;font-weight:800;white-space:normal;overflow-wrap:anywhere;word-break:break-word}.badge.ok{background:#d9f7ea;color:#14654f}.badge.warn{background:#fff0c2;color:#8a5b00}.badge.bad{background:#ffe0d8;color:#9a3326}.badge.neutral{background:#edf7ff;color:#275066}.scanner-result{display:grid;grid-gap:8px;gap:8px;margin:0 0 18px;border:1px solid rgba(13,55,89,.12);border-radius:24px;padding:18px 20px;box-shadow:0 18px 38px rgba(7,27,51,.08)}.scanner-result strong{font-size:clamp(22px,3vw,34px);line-height:1.05}.scanner-result span{color:var(--muted);font-size:16px}.scanner-result-ok{background:linear-gradient(135deg,#ddfaed,#f7fffb);color:#11563f}.scanner-result-warn{background:linear-gradient(135deg,#fff0c2,#fffaf0);color:#8a5b00}.scanner-result-bad{background:linear-gradient(135deg,#ffe0d8,#fff7f4);color:#9a3326}.scanner-mobile-page{display:grid;grid-gap:18px;gap:18px;max-width:1180px;margin:0 auto}.scanner-workflow{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);grid-gap:18px;gap:18px;align-items:start}.scanner-camera-panel,.scanner-install-panel,.scanner-register-panel,.scanner-today-panel{min-width:0;overflow:hidden}.scanner-camera-panel h2,.scanner-install-panel h2,.scanner-register-panel h2,.scanner-today-panel h2{margin-top:0}.scanner-register-button{width:100%;min-height:58px;font-size:18px}.scanner-alert-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:22px;color:inherit;line-height:1.35}.scanner-alert-list li{overflow-wrap:anywhere}.scanner-alert-list-small{margin-top:4px;font-size:14px}.scanner-attendance-list{display:grid;grid-gap:12px;gap:12px}.scanner-attendance-card{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:22px;padding:14px;background:hsla(0,0%,100%,.78);box-shadow:0 12px 24px rgba(10,31,68,.06)}.scanner-attendance-card.is-cancelled{opacity:.72}.scanner-attendance-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.scanner-attendance-top strong{font-size:18px;color:var(--navy)}.scanner-attendance-card h3{margin:0;font-size:22px;line-height:1.12;overflow-wrap:anywhere}.scanner-attendance-card p{margin:0;color:var(--muted)}.scanner-danger-details{margin-top:8px}.scanner-danger-details summary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--line);border-radius:999px;padding:9px 14px;background:hsla(0,0%,100%,.82);color:var(--navy);cursor:pointer;font-weight:900;list-style:none}.scanner-danger-details summary::-webkit-details-marker{display:none}.scanner-install-panel{background:linear-gradient(135deg,rgba(220,252,231,.62),rgba(239,246,255,.9))}.inline-action-form{display:grid;grid-gap:10px;gap:10px;margin-top:10px;padding-top:12px;border-top:1px solid rgba(138,91,0,.18)}.inline-action-form label{display:grid;grid-gap:6px;gap:6px;color:var(--navy);font-size:14px;font-weight:900}.inline-action-form input{min-height:46px;border:1px solid rgba(13,48,84,.16);border-radius:16px;padding:10px 12px;background:hsla(0,0%,100%,.78);color:var(--navy);font:inherit}button.badge{border:0;cursor:pointer;font-family:inherit}.inline-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.notice-list{display:grid;grid-gap:10px;gap:10px;border:1px solid var(--line);border-radius:20px;padding:16px;background:hsla(0,0%,100%,.56)}.notice-list p{margin:0;color:var(--muted)}.notice-list strong{color:var(--ink)}.notice{display:grid;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:22px;padding:16px 18px;background:hsla(0,0%,100%,.7);overflow-wrap:anywhere}.notice p{margin:0;color:var(--muted)}.notice.ok{background:#dff8ec;border-color:rgba(20,101,79,.18);color:#0d5c45}.inline-result{display:grid;grid-gap:4px;gap:4px;max-width:100%;margin-top:4px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);font-size:.92rem;line-height:1.35;overflow-wrap:anywhere}.inline-result span,.inline-result strong{min-width:0}.inline-result.ok{background:#dff8ec;border-color:rgba(20,101,79,.18);color:#0d5c45}.inline-result.warn{background:#fff2c9;border-color:rgba(138,91,0,.18);color:#775000}.inline-result.bad{background:#ffe4dc;border-color:rgba(154,51,38,.18);color:#8b2c21}.payment-workflow-intro{border:1px solid rgba(37,99,235,.16);border-radius:24px;padding:18px;background:linear-gradient(135deg,rgba(219,244,255,.86),rgba(222,255,239,.72));margin-bottom:18px}.payment-workflow-intro h2{margin:10px 0 6px}.payment-action-card{border:1px solid var(--line);border-radius:24px;padding:18px;background:hsla(0,0%,100%,.58);margin-bottom:18px}.payment-action-card,.payment-action-card *{min-width:0}.payment-action-card .muted{overflow-wrap:anywhere}.payment-action-card.primary-action{border-color:rgba(43,95,196,.22);background:rgba(232,247,255,.78)}.payment-action-card.correction-flow{background:hsla(0,0%,100%,.36)}.payment-action-card.correction-flow summary{cursor:pointer;list-style:none}.payment-action-card.correction-flow summary::-webkit-details-marker{display:none}.payment-action-card.correction-flow summary span{display:grid;grid-gap:4px;gap:4px}.payment-action-card.correction-flow summary strong:before{content:"Strumento opzionale · ";color:var(--orange);text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.payment-action-card.correction-flow summary small{color:var(--muted)}.payment-action-card.correction-flow[open] summary{margin-bottom:14px}.payment-action-card h2{margin-top:0}.payment-form-grid.grid.two{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}.payment-multi-actions{align-items:center;justify-content:flex-start}.payment-multi-actions .badge{max-width:100%;overflow-wrap:anywhere}.payment-fee-list{max-height:360px;overflow-y:auto;overflow-x:hidden;border:1px solid var(--line);border-radius:16px;padding:12px}.payment-fee-option{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;grid-gap:10px;gap:10px;margin-bottom:10px}.payment-fee-option input[type=checkbox]{width:auto;margin-top:4px}.payment-fee-text{min-width:0;line-height:1.35;overflow-wrap:anywhere}@media (max-width:720px){.payment-action-card{padding:14px;border-radius:20px}.payment-action-card h2{font-size:clamp(1.35rem,7vw,1.8rem);line-height:1.05}.payment-form-grid.grid.two{grid-template-columns:1fr}.payment-multi-actions{display:grid!important;grid-template-columns:1fr!important;max-width:none!important;width:100%!important;margin-inline:0!important}.payment-multi-actions .badge,.payment-multi-actions .button{width:100%!important;justify-content:center;text-align:center}.payment-fee-list{max-height:320px;padding:10px}}.payment-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.payment-quick-card{display:grid;grid-gap:8px;gap:8px;text-align:left;border:1px solid var(--line);border-radius:24px;padding:18px;background:hsla(0,0%,100%,.72);color:var(--ink);cursor:pointer;box-shadow:0 12px 24px rgba(10,31,68,.06)}.payment-quick-card:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.3)}.payment-quick-card strong{font-size:1.08rem}.payment-quick-card small{color:var(--muted);line-height:1.35}.payment-advanced-tools{border:1px solid var(--line);border-radius:24px;padding:16px;background:hsla(0,0%,100%,.58)}.payment-advanced-tools>summary{cursor:pointer;font-weight:900;font-size:1.15rem;color:var(--ink)}.payment-advanced-tools[open]>summary{margin-bottom:18px}.payment-report-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:18px;gap:18px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:14px}.payment-report-card:last-child{border-bottom:0;padding-bottom:0}.payment-report-card .public-actions{justify-content:flex-end;margin-top:0}.payment-main-grid{display:block;max-width:1180px;margin:0 auto}.payment-main-grid>.panel:first-child{min-width:0}.payment-tariff-panel{font-size:.92rem}.payment-tariff-panel table,.payment-tariff-reference table{font-size:.9rem}.payment-tariff-reference{max-width:1180px;margin:22px auto 0}.form{display:grid;grid-gap:14px;gap:14px}.payment-date-note{margin:0;color:var(--muted);font-size:.95rem;line-height:1.45}label{display:grid;grid-gap:6px;gap:6px;font-weight:700}input,select,textarea{border:1px solid var(--line);border-radius:16px;padding:12px 14px;font:inherit;background:#fff}textarea{resize:vertical}.inline-control{max-width:420px;margin-top:14px}.scanner-box{display:grid;grid-gap:14px;gap:14px}.scanner-video{width:100%;min-height:260px;border:1px solid var(--line);border-radius:18px;background:#06162a;object-fit:cover}.scanner-video-ok{border-color:rgba(22,163,74,.45);box-shadow:0 0 0 4px rgba(34,197,94,.14)}.scanner-camera-status{display:grid;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:18px;background:hsla(0,0%,100%,.76);padding:12px 14px;color:var(--muted)}.scanner-camera-status strong{color:var(--navy)}.scanner-camera-status-ok{border-color:rgba(22,163,74,.28);background:linear-gradient(135deg,#dcfce7,#f0fdf4);color:#166534}.scanner-camera-status-ok strong{color:#15803d}.code-pill{display:inline-block;max-width:100%;overflow-wrap:anywhere;border:1px solid var(--line);border-radius:12px;background:#fff;padding:8px 10px;color:var(--blue);font-weight:800}.qr-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:18px;gap:18px;margin-top:18px}.qr-card{display:grid;grid-gap:12px;gap:12px;justify-items:start;page-break-inside:avoid;break-inside:avoid;border:1px dashed var(--line);border-radius:22px;background:#fff;padding:18px}.qr-card h3{margin:6px 0;font-size:22px}.qr-card p{margin-bottom:4px}.qr-image{width:190px;height:190px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px}.correction-form{display:grid;grid-template-columns:minmax(110px,.8fr) 82px minmax(160px,1.2fr) auto;grid-gap:8px;gap:8px;align-items:center;min-width:520px}.correction-form input,.correction-form select{padding:9px 10px;border-radius:12px}.correction-form .button{padding:10px 12px}.status-actions{display:flex;flex-wrap:wrap;gap:8px;min-width:260px}.status-actions .button{padding:9px 11px}.empty-family-access{display:grid;grid-gap:14px;gap:14px;align-items:start;max-width:920px}.empty-family-access h2,.empty-family-access h3,.empty-family-access p{margin-bottom:0}.section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.section-heading-row h2,.section-heading-row p{margin-top:0}.section-heading-row form{flex:0 0 auto}.preline{display:inline-block;white-space:pre-line;max-width:520px}.request-details-card{display:grid;grid-gap:8px;gap:8px;min-width:320px;max-width:430px}.request-detail-line{display:grid;grid-template-columns:112px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:start;padding-bottom:7px;border-bottom:1px solid rgba(10,36,64,.08)}.request-detail-line span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;line-height:1.15;overflow-wrap:anywhere}.request-detail-line strong{color:var(--ink);font-size:14px;line-height:1.25;overflow-wrap:anywhere}.request-ok,.request-warning{border-radius:14px;padding:8px 10px;font-size:13px;font-weight:900}.request-warning{background:#f8d8d3;color:var(--red)}.request-ok{background:#d9f0d2;color:var(--green)}.nested-form-section{display:grid;grid-gap:14px;gap:14px;border:1px solid rgba(10,36,64,.12);border-radius:24px;padding:18px;background:hsla(0,0%,100%,.72)}.nested-form-section h2,.nested-form-section h3{margin:0}.check-row{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:flex-start;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:18px;background:hsla(0,0%,100%,.72);padding:12px 14px;line-height:1.32}.check-row input[type=checkbox]{width:22px!important;height:22px;min-width:22px;margin:1px 0 0;accent-color:var(--accent)}.check-row span{min-width:0;overflow-wrap:anywhere}.success-panel{display:grid;grid-gap:12px;gap:12px;border:1px solid rgba(54,146,88,.24);border-radius:24px;background:linear-gradient(135deg,rgba(218,247,229,.92),hsla(0,0%,100%,.9));padding:18px;box-shadow:0 18px 42px rgba(10,38,71,.08)}.success-panel h2,.success-panel p{margin-bottom:0}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(560px,100%)}.login-card-links{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.login-card-links a{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);padding:8px 11px;font-size:13px;font-weight:900}.login-card-links a:hover{border-color:rgba(49,197,244,.7);background:#eefaff}.public-site{min-height:100vh;max-width:100%;overflow-x:hidden;background:radial-gradient(circle at 12% 0,rgba(49,197,244,.28),transparent 31rem),radial-gradient(circle at 88% 12%,rgba(185,246,216,.42),transparent 28rem),linear-gradient(135deg,#f7fcff,#eaf7fb 48%,#f1fff7)}.public-hero{min-height:82vh;padding:28px clamp(20px,5vw,72px) 64px;display:grid;align-content:start;grid-gap:clamp(42px,7vw,78px);gap:clamp(42px,7vw,78px)}.public-hero-compact{min-height:auto;padding-bottom:36px}.public-header{display:grid;grid-gap:14px;gap:14px}.public-mobile-brand{display:none}.public-nav{display:flex;justify-content:space-between;align-items:center;gap:18px}.public-logo{display:inline-flex;align-items:center;gap:12px;font-weight:900;flex:0 0 auto;padding:6px 0}.public-brand-copy{display:grid;grid-gap:1px;gap:1px;line-height:1.05}.public-brand-copy small{color:var(--blue);font-size:10px;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.public-logo .brand-mark{display:inline-grid;width:52px;height:52px;place-items:center;border-radius:999px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;box-shadow:0 14px 28px rgba(10,38,71,.18)}.public-logo .brand-mark-img,.public-logo .brand-mark-official{display:block;object-fit:contain;padding:0;background:transparent}.public-logo .brand-mark-official{box-shadow:none}.public-federation-logo{display:block;flex:0 0 auto;width:clamp(104px,10vw,154px);max-height:54px;object-fit:contain}.public-nav strong{font-size:22px;letter-spacing:-.035em}.public-nav-links,.public-nav-primary,.public-nav-secondary{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.public-nav-links{flex:1 1 auto;display:grid;justify-items:end}.public-nav-primary,.public-nav-secondary{width:100%}.public-nav-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:999px;padding:10px 14px;background:hsla(0,0%,100%,.7);border:1px solid var(--line);font-weight:800;color:var(--navy);box-shadow:0 10px 22px rgba(10,38,71,.06)}.public-nav-links .nav-pill{background:hsla(0,0%,100%,.86)}.public-breadcrumb{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:hsla(0,0%,100%,.7);box-shadow:0 10px 22px rgba(10,38,71,.06);color:var(--muted);font-size:13px;font-weight:850}.public-breadcrumb a{color:var(--ink)}.public-breadcrumb strong{color:var(--accent-dark)}.public-section>.eyebrow,.request-intro>.eyebrow{font-size:15px}.nowrap{white-space:nowrap}.public-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);grid-gap:clamp(24px,5vw,64px);gap:clamp(24px,5vw,64px);align-items:center}.public-hero-content{max-width:840px}.public-hero-content h1{max-width:880px;font-size:clamp(46px,8vw,92px);letter-spacing:-.065em;margin-bottom:22px}.public-hero-content p{max-width:680px;font-size:clamp(18px,2.2vw,24px);color:var(--muted)}.hero-values-list{display:grid;grid-gap:8px;gap:8px;max-width:720px;margin:18px 0;padding:0;list-style:none}.hero-values-list li{position:relative;padding-left:26px;color:var(--ink);font-size:clamp(16px,1.7vw,19px);font-weight:800;line-height:1.28}.hero-values-list li:before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--cyan))}.hero-panel{position:relative;overflow:hidden;border:1px solid hsla(0,0%,100%,.7);border-radius:34px;padding:28px;background:linear-gradient(160deg,rgba(7,27,51,.96),rgba(21,101,192,.86)),radial-gradient(circle at 20% 0,rgba(49,197,244,.5),transparent 18rem);color:#fff;box-shadow:0 30px 80px rgba(10,38,71,.28)}.hero-panel:after{content:"";position:absolute;width:180px;height:180px;right:-58px;bottom:-60px;border-radius:999px;background:rgba(185,246,216,.18)}.hero-panel strong{display:block;position:relative;z-index:1;font-size:clamp(28px,4vw,42px);line-height:1.05;margin:14px 0}.hero-panel p{color:#d6ecf7}.hero-kicker,.hero-panel p{position:relative;z-index:1}.hero-kicker{display:inline-flex;border-radius:999px;background:hsla(0,0%,100%,.12);padding:8px 12px;color:var(--mint);font-weight:900;letter-spacing:.08em}.hero-stats{display:grid;position:relative;z-index:1;grid-gap:10px;gap:10px;margin-top:24px}.hero-stats span{display:flex;align-items:center;gap:12px;border-radius:18px;background:hsla(0,0%,100%,.11);padding:12px}.hero-stats b{display:inline-grid;min-width:48px;min-height:48px;place-items:center;border-radius:15px;background:var(--mint);color:var(--navy)}.public-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.public-actions.compact-actions{margin-top:16px}.public-section{padding:56px clamp(20px,5vw,72px)}.public-section h2{font-size:clamp(30px,5vw,54px);margin-bottom:22px}.public-band{background:hsla(0,0%,100%,.64);border-block:1px solid var(--line)}.public-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.public-card,.public-contact-card{background:hsla(0,0%,100%,.78);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--shadow)}.start-page{display:grid;grid-gap:28px;gap:28px}.start-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);grid-gap:24px;gap:24px;align-items:stretch}.start-copy,.start-note,.start-qr-card{border:1px solid var(--line);border-radius:32px;background:hsla(0,0%,100%,.82);box-shadow:var(--shadow)}.start-copy{padding:clamp(28px,5vw,54px)}.start-copy h1{max-width:880px;font-size:clamp(42px,7vw,76px)}.start-copy p{max-width:780px;font-size:20px}.start-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.start-qr-card{display:grid;grid-gap:14px;gap:14px;justify-items:center;align-content:center;text-align:center;padding:28px}.start-qr-card h2,.start-qr-card p{margin-bottom:0}.start-qr-image{width:min(100%,260px);aspect-ratio:1;border:1px solid var(--line);border-radius:24px;background:#fff;padding:16px}.start-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px;gap:18px}.start-note{padding:26px}.tariff-contact-card{display:grid;grid-gap:20px;gap:20px}.public-contact-form{max-width:760px}.checkbox-line{display:flex;align-items:flex-start;gap:10px;font-weight:700}.checkbox-line input{width:auto;margin-top:4px}.course-card{display:grid;grid-gap:8px;gap:8px}.course-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;color:var(--blue);font-weight:900}.course-topline small{border-radius:999px;background:#e7f9f0;color:#166950;padding:6px 9px}.course-time{display:inline-flex;width:-moz-fit-content;width:fit-content;border-radius:999px;background:linear-gradient(135deg,#e8f7ff,#ddfff0);color:var(--navy);padding:8px 12px;font-weight:900}.public-table-card{border:1px solid var(--line);border-radius:28px;background:hsla(0,0%,100%,.82);box-shadow:var(--shadow);overflow-x:auto}.public-table-card table{min-width:720px}.public-note{margin-top:16px}.public-card h3{font-size:26px;margin-bottom:12px}.price-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}.membership-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);grid-gap:24px;gap:24px;align-items:center;margin-bottom:18px;background:linear-gradient(135deg,hsla(0,0%,100%,.9),rgba(232,247,255,.92)),radial-gradient(circle at 95% 0,rgba(249,115,22,.16),transparent 18rem)}.membership-card h2{font-size:clamp(32px,5vw,58px);margin-bottom:12px}.membership-price{border-radius:24px;padding:22px;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;text-align:center;box-shadow:0 22px 46px rgba(10,38,71,.2)}.membership-price small,.membership-price span{display:block;color:#d6ecf7;font-weight:800}.membership-price strong{display:block;font-size:clamp(44px,7vw,72px);line-height:1;margin:8px 0;letter-spacing:-.06em}.price-card h2{font-size:clamp(28px,4vw,44px);margin:10px 0}.price-card{display:flex;flex-direction:column;gap:12px;min-width:0}.price-total{font-size:clamp(34px,4.2vw,54px);font-weight:950;letter-spacing:-.04em;color:var(--navy)}.price-main{display:grid;grid-gap:4px;gap:4px;margin:12px 0 10px}.price-main .price-total{margin:0}.price-main span{color:var(--blue);font-size:15px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.price-season-total{display:inline-flex;width:-moz-fit-content;width:fit-content;max-width:100%;border-radius:999px;padding:8px 12px;background:#eef8ff;color:var(--navy);font-weight:900;line-height:1.25;white-space:normal}.gym-flex-card{margin:22px 0;background:linear-gradient(135deg,hsla(0,0%,100%,.92),rgba(221,255,240,.86)),radial-gradient(circle at 96% 12%,rgba(19,117,184,.15),transparent 16rem)}.gym-flex-card h2{font-size:clamp(28px,4vw,46px);margin-bottom:10px}.price-section-list{display:grid;grid-gap:20px;gap:20px}.price-band-list{display:grid;grid-gap:26px;gap:26px}.price-age-band{display:grid;grid-gap:18px;gap:18px;border:1px solid rgba(13,48,84,.1);border-radius:34px;padding:clamp(16px,2.6vw,28px);background:linear-gradient(135deg,hsla(0,0%,100%,.82),rgba(247,252,255,.9)),radial-gradient(circle at 100% 0,rgba(47,111,202,.1),transparent 18rem);box-shadow:var(--shadow)}.price-age-band-under12{border-color:rgba(34,197,94,.34);background:linear-gradient(135deg,rgba(232,255,243,.96),rgba(250,255,252,.9)),radial-gradient(circle at 96% 0,rgba(34,197,94,.2),transparent 18rem)}.price-age-band-over12{border-color:rgba(245,158,11,.34);background:linear-gradient(135deg,rgba(255,249,219,.96),rgba(255,253,244,.9)),radial-gradient(circle at 96% 0,rgba(245,158,11,.2),transparent 18rem)}.price-age-band-extra{border-color:rgba(180,83,9,.34);background:linear-gradient(135deg,rgba(255,241,219,.96),rgba(255,250,242,.9)),radial-gradient(circle at 96% 0,rgba(180,83,9,.2),transparent 18rem)}.price-age-band-heading{display:grid;grid-template-columns:minmax(130px,180px) minmax(0,1fr);grid-gap:clamp(14px,3vw,28px);gap:clamp(14px,3vw,28px);align-items:center}.price-age-band-heading>span{display:inline-flex;width:-moz-fit-content;width:fit-content;border-radius:999px;padding:12px 16px;background:var(--navy);color:#fff;font-size:clamp(16px,2.2vw,22px);font-weight:950;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 14px 34px rgba(11,34,57,.14)}.price-age-band-under12 .price-age-band-heading>span{background:#166950}.price-age-band-over12 .price-age-band-heading>span{background:#9a5f00}.price-age-band-extra .price-age-band-heading>span{background:#b45309}.price-age-band-heading h2{margin:0;color:var(--navy);font-size:clamp(26px,3.6vw,44px);line-height:1;letter-spacing:-.04em}.price-age-band-heading p{max-width:760px;margin-top:8px;color:var(--muted);font-size:clamp(15px,1.6vw,18px);line-height:1.35}.price-section-card{border:1px solid var(--line);border-radius:28px;padding:clamp(16px,2.4vw,24px);background:linear-gradient(135deg,hsla(0,0%,100%,.76),rgba(247,252,255,.88)),radial-gradient(circle at 100% 0,rgba(249,115,22,.12),transparent 18rem);box-shadow:var(--shadow)}.price-section-heading{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(260px,1fr);grid-gap:14px;gap:14px;align-items:end;margin-bottom:14px}.price-section-heading h2{margin:4px 0 0;font-size:clamp(30px,3.8vw,48px);letter-spacing:-.04em;line-height:1.02}.price-section-card .price-card{box-shadow:none;overflow:hidden}.price-compact-list{display:grid;grid-gap:8px;gap:8px}.price-compact-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px);grid-gap:12px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:20px;padding:12px 14px;background:hsla(0,0%,100%,.86)}.price-compact-copy{min-width:0}.price-compact-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.price-compact-title strong{color:var(--blue);font-size:clamp(17px,1.8vw,22px);line-height:1.1}.price-compact-title span{border-radius:999px;background:#e7f9f0;color:#166950;padding:6px 10px;font-size:13px;font-weight:950}.price-compact-copy p{margin-top:5px;color:var(--muted);font-size:14px;line-height:1.28}.price-compact-price{display:grid;justify-items:end;text-align:right;grid-gap:2px;gap:2px;color:var(--navy)}.price-compact-price strong{font-size:clamp(28px,3.4vw,40px);line-height:1;letter-spacing:-.05em}.price-compact-price span{color:var(--blue);font-size:13px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.price-compact-price small{max-width:210px;color:var(--muted);font-weight:850;line-height:1.25}.public-contact{display:grid;grid-template-columns:1.2fr .8fr;grid-gap:28px;gap:28px;align-items:start}.request-layout{grid-template-columns:1fr;max-width:1240px}.request-intro{max-width:980px}.request-form-card{width:100%;max-width:none}.request-form-card .form{max-width:none}.request-form-card .nested-form-section h2{font-size:clamp(34px,5vw,56px)}.request-actions{margin-top:18px}.paper-form-page{width:min(1040px,calc(100% - 32px));margin:0 auto 64px;padding:34px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow);color:#111827}.paper-header{display:grid;grid-template-columns:96px 1fr 150px;grid-gap:24px;gap:24px;align-items:center;padding-bottom:18px;border-bottom:2px solid #111827}.paper-header img{width:100%;max-height:88px;object-fit:contain}.paper-header h1{margin:0;font-size:28px;text-transform:uppercase}.paper-header h2{margin:8px 0 0;font-size:22px}.paper-header p,.paper-small{margin:2px 0;color:#374151;font-size:13px}@media (max-width:720px){.paper-form-page{width:min(100%,calc(100% - 20px));padding:18px;border-radius:22px}.paper-header{display:flex;flex-direction:column;gap:10px;text-align:center}.paper-header img{width:86px;max-height:86px}.paper-header h1{font-size:24px;line-height:1.05}.paper-header h2{font-size:19px;line-height:1.12}.paper-header p,.paper-note,.paper-small{font-size:12.5px;line-height:1.35}.paper-grid.three,.paper-grid.two{grid-template-columns:1fr}.paper-section{padding-block:16px}}.paper-note{margin:0 0 12px;padding:9px 12px;border:1px solid #d1d5db;border-radius:10px;background:#f9fafb;color:#374151;font-size:12px;line-height:1.35}.paper-section{padding:16px 0;border-bottom:1px solid #d1d5db}.paper-section h3{margin:0 0 12px;color:#0f2335;font-size:18px;text-transform:uppercase;letter-spacing:.08em}.paper-grid{display:grid;grid-gap:12px;gap:12px;margin-bottom:12px}.paper-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.paper-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:720px){.paper-grid.three,.paper-grid.two{grid-template-columns:1fr}}.paper-field span{display:block;margin-bottom:5px;color:#374151;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.paper-field div{min-height:34px;border:1.5px solid #111827;border-radius:8px;background:#fff}.paper-field-wide div{min-height:38px}.paper-check{display:flex;align-items:flex-start;gap:8px;margin-top:9px;font-size:14px;line-height:1.25}.paper-box{display:inline-block;flex:0 0 auto;width:18px;height:18px;border:1.8px solid #111827;border-radius:4px}.paper-signatures{margin-top:18px}.training-profile-head,.training-student-picker{display:flex;align-items:center;justify-content:space-between;gap:18px}.training-student-picker label{flex:1 1;max-width:560px}.training-progress-ring{min-width:116px;min-height:116px;border-radius:999px;display:grid;place-content:center;text-align:center;color:#fff;background:linear-gradient(145deg,#173b2d,#2f7d55);box-shadow:0 12px 30px rgba(23,59,45,.2)}.training-progress-ring strong{font-size:1.55rem}.training-progress-ring small{display:block;opacity:.85}.training-checkpoints,.training-goal-list{display:grid;grid-gap:14px;gap:14px}.training-goal{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,220px);grid-gap:20px;gap:20px;padding:18px;border:1px solid #dfe6e2;border-left:6px solid #aab6af;border-radius:14px;background:#fff}.training-checkpoint h3,.training-goal h3{margin:8px 0 6px}.training-checkpoint p,.training-goal p{margin:0;color:#526158}.training-goal .badge+.badge{margin-left:6px}.training-goal.goal-in_corso{border-left-color:#d69b24;background:#fffbf1}.training-goal.goal-acquisito{border-left-color:#2f7d55;background:#f3faf6}.training-goal.goal-da_rivedere{border-left-color:#b64c4c;background:#fff7f7}.training-checkpoint{display:grid;grid-template-columns:minmax(240px,1.5fr) repeat(2,minmax(150px,.65fr));grid-gap:14px;gap:14px;align-items:end;padding:18px;border:1px solid #dfe6e2;border-radius:14px;background:#fbfcfb}.training-checkpoint>button,.training-checkpoint>label:nth-of-type(3){grid-column:1/-1}@media (max-width:760px){.training-profile-head,.training-student-picker{align-items:stretch;flex-direction:column}.training-student-picker label{max-width:none}.training-progress-ring{align-self:flex-start;min-width:100px;min-height:100px}.training-checkpoint,.training-goal{grid-template-columns:1fr}.training-checkpoint>button,.training-checkpoint>label:nth-of-type(3){grid-column:auto}}@media print{.print-hide{display:none!important}.paper-form-page{width:100%;margin:0;padding:0;border:0;border-radius:0;box-shadow:none}.paper-section{page-break-inside:avoid;break-inside:avoid}}.receipt-sheet{max-width:860px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);padding:clamp(18px,3vw,32px)}.receipt-clean{max-width:760px;color:#151515;border-radius:10px;font-family:Georgia,Times New Roman,serif;font-size:14px;line-height:1.28}.receipt-clean h1,.receipt-clean h2,.receipt-clean p{color:#151515}.receipt-clean h1{margin:0 0 4px;font-size:20px;text-transform:none}.receipt-clean h2{margin:0 0 6px;font-size:15px}.receipt-clean .receipt-header{border-bottom:2px solid #151515;padding-bottom:14px;margin-bottom:16px}.receipt-association-with-logo{display:flex;align-items:flex-start;gap:14px}.receipt-clean-logo{width:72px;height:72px;object-fit:contain;flex:0 0 auto}.receipt-association p{margin:5px 0;font-weight:700}.receipt-clean .receipt-number{border:1px solid #151515;border-radius:8px;background:#fff}.receipt-payer{margin:22px 0 18px;text-align:right}.receipt-payer h2{font-size:16px}.receipt-section-label{margin:0 0 10px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.receipt-object{margin:18px 0;font-size:14px}.receipt-object p{margin:0}.receipt-clean-table{margin:18px 0}.receipt-clean-table table{width:100%;border-collapse:collapse}.receipt-clean-table td,.receipt-clean-table th{border-bottom:1px solid #d9d9d9;padding:7px 8px;vertical-align:top}.receipt-clean-table th{width:42%;text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.receipt-clean-table td span{margin-left:8px;color:#333}.receipt-clean .receipt-declaration{border:0;border-top:2px solid #151515;border-radius:0;background:#fff;margin-top:20px;padding:14px 0 0}.receipt-clean .receipt-footer{border-top:0;justify-content:center;padding-top:12px}.receipt-footer,.receipt-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.receipt-number{min-width:170px;border:1px solid var(--line);border-radius:18px;padding:10px;text-align:right}.receipt-footer span,.receipt-grid span,.receipt-number span{display:block;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.receipt-number strong{display:block;font-size:18px;margin:4px 0}.receipt-box{margin:34px 0;border-block:1px solid var(--line);padding:24px 0}.receipt-box p{font-size:20px;line-height:1.55}.receipt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.receipt-grid div{border:1px solid var(--line);border-radius:16px;padding:14px}.receipt-footer strong,.receipt-grid strong{display:block;margin-top:6px}.receipt-declaration{margin-top:12px;border:1px solid var(--line);border-radius:18px;background:#f4fbff;padding:12px}.receipt-declaration p:last-child{margin-bottom:0}.receipt-footer{margin-top:14px;border-top:1px solid var(--line);padding-top:8px}.receipt-footer-single{justify-content:center;text-align:center}.receipt-footer-single strong{letter-spacing:.08em}.receipt-footer small{display:block;color:var(--muted);margin-top:4px}.receipt-note{margin-top:32px;color:var(--muted);font-size:13px}@media (max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:static}.filters-row,.grid.cards,.grid.two,.payment-main-grid,.payment-report-card{grid-template-columns:1fr}.main{padding:22px}.card,.panel{overflow-x:visible}.grid.cards{gap:12px}.card strong{font-size:clamp(22px,8vw,30px)}.section-heading-row{display:grid}.section-heading-row .button{width:100%}.public-nav{align-items:center;flex-direction:column}.public-hero-grid,.start-actions,.start-hero,.start-path-grid{grid-template-columns:1fr}.start-actions{display:grid}.start-actions .button{width:100%;justify-content:center;text-align:center}.start-qr-card{display:none}.membership-card,.price-grid,.price-section-heading,.public-card-grid,.public-contact,.receipt-grid{grid-template-columns:1fr}.receipt-footer,.receipt-header{display:grid}.receipt-number{text-align:left}}@media (max-width:640px){.main,.shell,.sidebar,body,html{width:100%;max-width:100%;overflow-x:hidden}.main{padding:14px}.sidebar{padding:18px 14px}.brand{margin-bottom:16px}.brand strong{font-size:20px}.nav{grid-template-columns:1fr;gap:8px}.nav a{width:100%;min-width:0;border-radius:15px;padding:10px 11px;text-align:center}.breadcrumb-bar{font-size:12px;padding:8px 10px}.card,.panel{border-radius:22px;padding:16px;width:100%;max-width:100%}.main *,.sidebar *{min-width:0}.main table{width:100%;table-layout:fixed}.main td,.main th{overflow-wrap:anywhere;word-break:normal}.scanner-result{border-radius:22px;padding:16px}.scanner-result strong{font-size:24px}.scanner-mobile-page{gap:14px;width:100%;max-width:100%;overflow-x:hidden}.scanner-mobile-page .page-header h1{font-size:clamp(30px,9vw,42px);line-height:.98}.scanner-workflow{grid-template-columns:1fr;gap:12px}.scanner-camera-panel h2,.scanner-install-panel h2,.scanner-register-panel h2,.scanner-today-panel h2{font-size:24px}.scanner-box{gap:10px}.scanner-video{min-height:240px;border-radius:20px}.scanner-register-button{min-height:60px;font-size:17px}.scanner-attendance-card{border-radius:20px;padding:14px}.scanner-attendance-card h3{font-size:20px}.scanner-danger-details summary{width:100%}.grid.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.qr-card{justify-items:center;text-align:center;padding:14px}.qr-card>div{width:100%;min-width:0}.qr-image{width:min(190px,100%);height:auto}.code-pill{width:100%;font-size:11px;line-height:1.25;word-break:break-all}.check-row{grid-template-columns:28px minmax(0,1fr);padding:12px;font-size:14px}.check-row input[type=checkbox]{width:22px!important;height:22px}.personal-area-page{width:100%;max-width:100%;overflow-x:hidden}.personal-area-page .grid,.personal-area-page .grid.cards,.personal-area-page .grid.two,.personal-area-page .stat-grid{display:grid;grid-template-columns:1fr!important;width:100%;max-width:100%;grid-gap:12px;gap:12px}.personal-area-page .card,.personal-area-page .panel,.personal-area-page article{min-width:0;max-width:100%;overflow-x:hidden}.personal-area-page h1,.personal-area-page h2,.personal-area-page h3,.personal-area-page p,.personal-area-page small,.personal-area-page span,.personal-area-page strong,.personal-area-page td,.personal-area-page th{max-width:100%;overflow-wrap:anywhere;word-break:normal}.personal-area-page .card strong{font-size:clamp(24px,9vw,34px)}.personal-area-page table,.personal-area-page tbody,.personal-area-page td,.personal-area-page th,.personal-area-page thead,.personal-area-page tr{display:block;width:100%}.personal-area-page thead{display:none}.personal-area-page tr{border-bottom:1px solid var(--line);padding:12px 0}.personal-area-page td{border:0;padding:5px 0}.personal-area-page td+td{margin-top:2px}.personal-area-page .status-actions{display:grid;grid-template-columns:1fr}.personal-area-page .section-heading-row .button,.personal-area-page .status-actions .button{width:100%}.public-site,body{width:100%;max-width:100%}.public-hero{min-height:auto;padding:14px 12px 34px;gap:20px}.public-section{padding:28px 12px}.public-nav{align-items:center;gap:14px;width:100%}.public-mobile-brand{display:grid;justify-items:center;grid-gap:5px;gap:5px;width:min(100%,320px);margin:0 auto 4px;color:var(--navy);text-align:center;text-decoration:none}.public-mobile-brand img{width:58px;height:58px;object-fit:contain}.public-mobile-brand strong{display:block;font-size:clamp(27px,7.6vw,33px);line-height:.95;letter-spacing:-.045em;text-align:center}.public-mobile-brand small{display:block;color:var(--blue);font-size:9px;font-weight:950;letter-spacing:.09em;text-transform:uppercase;text-align:center}.public-federation-logo,.public-nav .public-logo{display:none}.public-nav-links{width:100%;display:grid;grid-gap:8px;gap:8px;justify-items:center;margin-inline:auto}.public-nav-primary,.public-nav-secondary{width:100%;justify-content:center}.public-nav-primary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:360px;grid-gap:8px;gap:8px}.public-nav-secondary{gap:6px;max-width:360px}.public-nav-primary a{min-height:38px;padding:8px;font-size:clamp(14px,4vw,16px);line-height:1.08;white-space:normal;text-align:center}.public-nav-secondary a{min-height:30px;padding:6px 8px;font-size:clamp(12px,3.5vw,14px);line-height:1}.public-breadcrumb{margin-inline:auto;padding:6px 9px;font-size:12px}.public-hero-content h1{font-size:clamp(30px,8.8vw,38px);line-height:1;letter-spacing:-.045em;margin-bottom:14px}.public-hero-content p{font-size:clamp(15px,4vw,17px);line-height:1.35}.hero-values-list{gap:6px;margin:14px 0}.hero-values-list li{padding-left:20px;font-size:14px;line-height:1.24}.hero-values-list li:before{width:8px;height:8px}.public-hero-compact .public-hero-content{text-align:center;margin-inline:auto}.public-hero-compact .public-hero-content p{margin-inline:auto}.public-hero-compact .public-actions{justify-content:center}.membership-card h2,.price-section-heading h2,.public-section h2{font-size:clamp(24px,7.1vw,30px);line-height:1.05;letter-spacing:-.04em;margin-bottom:14px}.public-card h3{font-size:clamp(21px,6.2vw,25px);line-height:1.08}.membership-card,.price-age-band,.price-section-card,.public-card{border-radius:24px;padding:16px;width:100%;max-width:100%;min-width:0}.price-section-card{margin-inline:0}.price-band-list{gap:18px}.price-age-band{gap:12px;margin-inline:0}.price-age-band-heading{grid-template-columns:1fr;gap:10px;text-align:left}.price-age-band-heading>span{padding:9px 12px;font-size:14px}.price-age-band-heading h2{font-size:clamp(24px,7.4vw,30px);line-height:1.04}.price-age-band-heading p{font-size:14px;line-height:1.3;margin-top:6px}.price-section-heading{gap:6px;margin-bottom:10px}.price-section-heading p{font-size:14px;line-height:1.32}.price-card,.price-grid,.public-card-grid,.start-path-grid{width:100%;max-width:100%}.price-card{min-width:0}.price-card h2{font-size:clamp(24px,7.5vw,32px);line-height:1.08;letter-spacing:-.025em}.price-total{font-size:clamp(36px,12vw,48px)}.price-compact-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:10px 12px;border-radius:18px}.price-compact-title{align-items:flex-start}.price-compact-title strong{font-size:17px}.price-compact-title span{padding:4px 8px;font-size:11px}.price-compact-copy p{font-size:13px;line-height:1.25}.price-compact-price{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap;text-align:left;border-top:1px solid var(--line);padding-top:7px}.price-compact-price strong{font-size:28px}.price-compact-price span{font-size:11px}.price-compact-price small{flex-basis:100%;font-size:12px;line-height:1.2}.button,.public-contact .button,button{max-width:100%;white-space:normal;text-align:center;justify-content:center}}@media (max-width:420px){.public-hero,.public-section{padding-inline:10px}.public-mobile-brand{max-width:300px}.public-mobile-brand img{width:54px;height:54px}.public-mobile-brand strong{font-size:28px}.public-mobile-brand small{font-size:8px}.public-nav-primary{grid-template-columns:repeat(2,minmax(0,1fr));max-width:320px}.public-nav-primary a{min-height:44px}.public-nav-primary a:last-child{grid-column:1/-1}.public-nav-secondary{max-width:320px}.public-hero-content h1,.start-copy h1{font-size:clamp(28px,8.6vw,34px)}.membership-card,.price-section-card,.public-card,.start-copy,.start-note{padding:15px}.price-grid{grid-template-columns:minmax(0,1fr)!important}}@media print{@page{size:A4;margin:8mm}body{background:#fff}.print-hide,.sidebar{display:none!important}.shell{display:block}.main{padding:0}.panel,.receipt-sheet{box-shadow:none;border:0;padding:0}.receipt-sheet{max-width:none;border-radius:0}.receipt-clean{font-size:9.4pt;line-height:1.18}.receipt-clean h1{font-size:15pt}.receipt-clean h2{font-size:10.5pt}.receipt-clean .receipt-header{padding-bottom:8px;margin-bottom:8px}.receipt-clean-logo{width:18mm;height:18mm}.receipt-association-with-logo{gap:8px}.receipt-payer{margin:6mm 0 5mm}.receipt-clean-table,.receipt-object{margin:4.5mm 0}.receipt-clean .receipt-declaration,.receipt-clean .receipt-footer{margin-top:4.5mm;padding-top:4mm}.receipt-clean-table td,.receipt-clean-table th{padding:4px 5px;font-size:8.8pt}.receipt-clean .receipt-number,.receipt-clean-table td,.receipt-clean-table th{border-color:#111}.receipt-note{display:none}.qr-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.qr-card{page-break-inside:avoid}}.annual-summary-print{display:none;margin-top:24px}.season-summary-page{margin-top:24px}.receipt-summary-total-row td{border-top:2px solid #151515;border-bottom:0;padding-top:8px}.receipt-total-line{text-align:right;font-size:18px;margin-top:18px}@media print{body:has(.annual-summary-print) .page-header,body:has(.annual-summary-print) .panel>.filters-row,body:has(.annual-summary-print) .panel>.muted,body:has(.annual-summary-print) .panel>.stat-grid,body:has(.annual-summary-print) .panel>h2,body:has(.annual-summary-print) .panel>table{display:none!important}.annual-summary-print{display:block;max-width:none;margin:0}.annual-summary-print .receipt-clean-table td,.annual-summary-print .receipt-clean-table th{font-size:8.6pt;padding:3px 5px}}@media (max-width:700px){.public-site,body,html{width:100%!important;max-width:100%!important;overflow-x:hidden!important}.public-site *,.public-site :after,.public-site :before{min-width:0}.price-compact-list,.price-section-card,.price-section-list,.public-card-grid,.public-header,.public-hero,.public-hero-content,.public-nav,.public-nav-links,.public-nav-primary,.public-nav-secondary,.public-section{width:100%!important;max-width:100%!important}.public-hero,.public-section{padding-left:14px!important;padding-right:14px!important}.public-header{justify-items:center!important;margin-inline:auto!important}.public-mobile-brand{display:grid!important;width:100%!important;max-width:310px!important;margin:0 auto 8px!important;justify-items:center!important;text-align:center!important;color:var(--navy)!important;background:transparent!important;box-shadow:none!important;border:0!important}.public-mobile-brand img{display:block!important;width:58px!important;height:58px!important;margin:0 auto 4px!important;object-fit:contain!important}.public-mobile-brand strong{display:block!important;font-size:clamp(27px,7.4vw,32px)!important;line-height:.95!important;letter-spacing:-.045em!important;text-align:center!important}.public-mobile-brand small{display:block!important;color:var(--blue)!important;font-size:8px!important;font-weight:950!important;letter-spacing:.08em!important;text-align:center!important;text-transform:uppercase!important}.public-nav{display:grid!important;justify-items:center!important;justify-content:center!important;margin-inline:auto!important;grid-gap:10px!important;gap:10px!important}.public-nav>.public-federation-logo,.public-nav>.public-logo{display:none!important}.public-nav-links{display:grid!important;justify-items:center!important;justify-content:center!important;grid-gap:8px!important;gap:8px!important;margin-inline:auto!important}.public-nav-secondary{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:6px!important}.public-nav-primary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-gap:8px!important;gap:8px!important;max-width:320px!important;margin-inline:auto!important}.public-nav-primary a:last-child{grid-column:1/-1!important}.public-nav-links a{max-width:100%!important;text-align:center!important;white-space:normal!important}.public-breadcrumb{justify-self:center!important}.public-breadcrumb,.public-hero-content{margin-inline:auto!important}.public-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:320px!important;margin-left:auto!important;margin-right:auto!important;justify-content:center!important;grid-gap:10px!important;gap:10px!important}.public-actions .button,.public-actions a{width:100%!important;padding-inline:10px!important}.public-actions .button:only-child,.public-actions a:only-child{grid-column:1/-1!important}}