:root{
	--progress-start:#18b7c1;
	--progress-middle:#247fb6;
	--progress-end:#46b867;
	--progress-glow:rgba(24,183,193,.38);
  --bg:#edf7f9;
  --bg-2:#f8fcfd;
  --ink:#102638;
  --muted:rgba(16,38,56,.68);
  --muted-2:rgba(16,38,56,.46);
  --line:rgba(4,77,118,.12);
  --cyan:#18b7c1;
  --cyan-l:#67dce1;
  --cyan-d:#087d8a;
  --blue:#247fb6;
  --blue-d:#044d76;
  --green:#46b867;
  --green-d:#117c45;
  --green-l:#9bd7ad;
  --about-red:#ff4f55;
  --about-red-d:#b73338;
  --cream:#f8fbf7;
  --font:"Finlandica Text", "Finlandica", system-ui, sans-serif;
  --container:min(1240px,calc(100% - 48px));
}
button,input,textarea,select{font-family:var(--font)}
.ambient-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 7% 0%,rgba(24,183,193,.18),transparent 31%),radial-gradient(circle at 97% 22%,rgba(36,127,182,.16),transparent 33%),radial-gradient(circle at 48% 97%,rgba(70,184,103,.14),transparent 42%),linear-gradient(180deg,#f8fcfd 0%,#edf7f9 38%,#eff8f2 72%,#f7fbfb 100%)}
.ambient-grid{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.36;background-image:linear-gradient(rgba(18,63,89,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(18,63,89,.045) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at center,black 46%,transparent 96%)}section{position:relative;padding:128px 0}.hero{min-height:100vh;display:flex;align-items:center;padding-top:160px;padding-bottom:90px;background:linear-gradient(90deg,rgba(248,252,253,.98) 0%,rgba(248,252,253,.84) 42%,rgba(248,252,253,.24) 78%,rgba(248,252,253,0) 100%)}
.hero-layout{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:60px;align-items:end}.page-number{font-size:14px;font-weight:700;letter-spacing:.24em;color:var(--muted-2);margin-bottom:8px}.kicker{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;color:var(--cyan-d);font-size:11px;font-weight:700;letter-spacing:.27em;text-transform:uppercase}.kicker:before{content:"";width:36px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent)}
.hero h1{font-size:clamp(62px,8.2vw,132px);line-height:.90;letter-spacing:-.055em;font-weight:400;text-transform:uppercase;max-width:940px}.hero h1 em{font-style:normal;color:var(--cyan-d)}.hero p{max-width:680px;margin-top:28px;color:var(--muted);font-size:clamp(17px,1.35vw,21px);line-height:1.65}.btn{background:linear-gradient(135deg,var(--cyan),var(--blue-d));color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 38px rgba(24,183,193,.24)}
.identity-stack{display:grid;gap:14px}.hub-card{--accent:var(--cyan);padding:28px;border:1px solid color-mix(in srgb,var(--accent) 48%,transparent);border-radius:28px;background:rgba(255,255,255,.80);backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(32,77,100,.12)}.hub-card.green{--accent:var(--green)}.hub-card.red{--accent:var(--about-red)}.hub-card .label{display:inline-flex;margin-bottom:16px;padding:7px 12px;border-radius:999px;background:color-mix(in srgb,var(--accent) 10%,white);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);color:color-mix(in srgb,var(--accent) 76%,#102638);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.hub-card h2{font-size:27px;line-height:1.02;letter-spacing:-.035em}.hub-card ul{list-style:none;display:grid;gap:9px;margin-top:16px;color:var(--muted);font-size:15px;line-height:1.42}.hub-card li{position:relative;padding-left:18px}.hub-card li:before{content:"•";position:absolute;left:0;color:var(--accent);font-weight:700}.hub-card.green li:before,.hub-card.red li:before{content:"→"}
.section-head{max-width:780px;margin-bottom:48px}.sec-title{font-size:clamp(38px,4.4vw,74px);font-weight:400;line-height:.98;letter-spacing:-.045em;color:var(--ink)}.sec-sub{max-width:650px;margin-top:20px;color:var(--muted);font-size:clamp(16px,1.22vw,19px);line-height:1.72}.panel-section{background:rgba(248,252,253,.76);border-top:1px solid rgba(4,77,118,.10);border-bottom:1px solid rgba(4,77,118,.07);backdrop-filter:blur(2px)}
.story-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:start}.story-copy{display:grid;gap:18px}.story-card{padding:34px;border-radius:30px;background:rgba(255,255,255,.80);border:1px solid rgba(4,77,118,.10);box-shadow:0 18px 55px rgba(32,77,100,.08);backdrop-filter:blur(14px)}.story-card h2{font-size:clamp(32px,3.2vw,54px);line-height:1.02;letter-spacing:-.045em;font-weight:500}.story-card p{margin-top:18px;color:var(--muted);font-size:18px;line-height:1.72}.visual-board{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:220px;gap:14px;position:sticky;top:110px}.visual-tile{position:relative;overflow:hidden;border-radius:30px;background:linear-gradient(135deg,#dff8fb,#f8fcfd 48%,#e3f5ed);border:1px solid rgba(4,77,118,.10);box-shadow:0 16px 50px rgba(32,77,100,.08)}.visual-tile.big{grid-row:span 2}.visual-tile:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.72) 1.5px,transparent 1.5px);background-size:18px 18px;mask-image:radial-gradient(circle at 65% 65%,black,transparent 72%)}.visual-tile:after{content:attr(data-label);position:absolute;left:22px;right:22px;bottom:20px;font-size:30px;font-weight:700;line-height:1.02;letter-spacing:-.04em;color:var(--ink)}.visual-number{position:absolute;right:18px;top:16px;font-size:78px;line-height:1;font-weight:700;letter-spacing:-.08em;color:rgba(16,38,56,.09)}

/* Benefit-purpose cards: more vertical room for the full statutory copy. */
:where(.page--demo,.editor-styles-wrapper) .benefit-purpose-board.visual-board{
  grid-auto-rows:300px;
}
:where(.page--demo,.editor-styles-wrapper) .benefit-purpose-board .visual-purpose{
  padding:18px;
}
:where(.page--demo,.editor-styles-wrapper) .benefit-purpose-board .visual-purpose h3{
  margin-bottom:8px;
}
@media(max-width:760px){
  :where(.page--demo,.editor-styles-wrapper) .benefit-purpose-board.visual-board{
    grid-auto-rows:auto;
  }
  :where(.page--demo,.editor-styles-wrapper) .benefit-purpose-board .visual-tile{
    min-height:340px;
  }
}

.method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.method-card{padding:28px;border-radius:28px;background:rgba(255,255,255,.78);border:1px solid rgba(24,183,193,.18);box-shadow:0 16px 50px rgba(32,77,100,.08);backdrop-filter:blur(14px);transition:transform .32s ease,border-color .32s ease}.method-card:hover{transform:translateY(-5px);border-color:rgba(24,183,193,.42)}.method-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:rgba(24,183,193,.10);border:1px solid rgba(24,183,193,.20);color:var(--cyan-d);font-weight:700;font-size:20px;margin-bottom:18px}.method-card h3{font-size:24px;line-height:1.08;letter-spacing:-.035em}.method-card p{margin-top:12px;color:var(--muted);font-size:15px;line-height:1.58}.competence-strip{margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.competence{min-height:180px;padding:22px;border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(232,249,251,.78));border:1px solid rgba(4,77,118,.10);box-shadow:0 14px 40px rgba(32,77,100,.07)}.competence span{display:block;color:var(--muted-2);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.competence strong{display:block;margin-top:18px;font-size:24px;line-height:1.04;letter-spacing:-.035em}.competence p{margin-top:10px;color:var(--muted);font-size:14px;line-height:1.5}
.sustain-section{background:linear-gradient(180deg,rgba(241,250,244,.92),rgba(230,246,235,.92));border-top:1px solid rgba(70,184,103,.16);border-bottom:1px solid rgba(70,184,103,.12)}.sustain-section .kicker{color:var(--green-d)}.sustain-section .kicker:before{background:linear-gradient(90deg,var(--green),transparent)}.sustain-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:54px;align-items:start}.impact-card{position:sticky;top:110px;padding:34px;border-radius:34px;background:rgba(255,255,255,.78);border:1px solid rgba(70,184,103,.24);box-shadow:0 24px 70px rgba(32,77,100,.10);backdrop-filter:blur(14px)}.impact-card h2{font-size:clamp(36px,4.2vw,68px);line-height:.96;letter-spacing:-.055em;font-weight:500}.impact-card h2 em{font-style:normal;color:var(--green-d)}.impact-card p{margin-top:22px;color:var(--muted);font-size:18px;line-height:1.72}.impact-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.impact-pills span{display:inline-flex;min-height:32px;align-items:center;padding:0 12px;border-radius:999px;background:rgba(70,184,103,.10);color:var(--green-d);border:1px solid rgba(70,184,103,.18);font-size:12px;font-weight:700}.green-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.green-card{padding:28px;border-radius:28px;background:rgba(255,255,255,.74);border:1px solid rgba(70,184,103,.18);box-shadow:0 16px 50px rgba(32,77,100,.07);transition:transform .32s ease,border-color .32s ease}.green-card:hover{transform:translateY(-4px);border-color:rgba(70,184,103,.42)}.green-card .tag{display:inline-flex;margin-bottom:16px;padding:7px 12px;border-radius:999px;background:rgba(70,184,103,.10);color:var(--green-d);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.green-card h3{font-size:25px;line-height:1.08;letter-spacing:-.035em}.green-card p{margin-top:12px;color:var(--muted);font-size:15px;line-height:1.62}.green-card.wide{grid-column:1/-1;background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(220,244,226,.82))}
.milestones-section{background:rgba(248,252,253,.78)}.milestone-list{display:grid;gap:8px}.milestone-row{display:grid;grid-template-columns:1fr 120px;gap:24px;align-items:center;min-height:58px;padding:0 18px;border-radius:18px;background:rgba(255,255,255,.72);border:1px solid rgba(4,77,118,.09);box-shadow:0 10px 30px rgba(32,77,100,.05)}.milestone-row strong{font-size:17px;line-height:1.2}.milestone-row span{justify-self:end;color:var(--cyan-d);font-size:15px;font-weight:700}.culture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.culture-card{min-height:320px;padding:34px;border-radius:32px;background:rgba(255,255,255,.78);border:1px solid rgba(24,183,193,.16);box-shadow:0 18px 55px rgba(32,77,100,.08);backdrop-filter:blur(14px)}.culture-card h3{font-size:clamp(30px,3vw,48px);line-height:1.02;letter-spacing:-.045em}.culture-card p{margin-top:18px;color:var(--muted);font-size:17px;line-height:1.68}.culture-card ul{margin-top:24px;display:grid;gap:10px;list-style:none}.culture-card li{position:relative;padding-left:22px;color:var(--muted);font-size:15px;line-height:1.45}.culture-card li:before{content:"→";position:absolute;left:0;color:var(--cyan-d);font-weight:700}
.whistle-section{background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(249,244,244,.90));border-top:1px solid rgba(255,79,85,.12)}.whistle-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:30px;padding:34px;border-radius:34px;background:rgba(255,255,255,.82);border:1px solid rgba(255,79,85,.28);box-shadow:0 22px 70px rgba(32,77,100,.10);backdrop-filter:blur(14px)}.whistle-icon{width:66px;height:66px;border-radius:22px;display:grid;place-items:center;background:rgba(255,79,85,.08);border:1px solid rgba(255,79,85,.18);color:var(--about-red-d);font-weight:700;font-size:26px;margin-bottom:22px}.whistle-card h2{font-size:clamp(34px,4vw,66px);line-height:.96;letter-spacing:-.055em;font-weight:500;color:var(--about-red-d)}.whistle-card p{margin-top:18px;color:var(--muted);font-size:17px;line-height:1.66}.whistle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.whistle-item{padding:22px;border-radius:22px;background:rgba(255,247,247,.70);border:1px solid rgba(255,79,85,.13)}.whistle-item span{display:block;color:var(--about-red-d);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.whistle-item strong{display:block;margin-top:12px;font-size:20px;line-height:1.15}.whistle-item p{margin-top:10px;font-size:14px;line-height:1.48}.contact{background:linear-gradient(90deg,rgba(248,252,253,.96) 0%,rgba(248,252,253,.70) 46%,rgba(248,252,253,.10) 100%)}.contact h2 em{font-style:normal;color:var(--cyan-d)}

.visual-tile{background-size:cover!important;background-position:center!important}
.visual-tile:nth-child(1){background-image:url('https://images.unsplash.com/photo-1584257274862-42aa4f6e5f55?q=80&w=2574&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D')}
.visual-tile:nth-child(2){background-image:url('https://images.unsplash.com/photo-1581092918056-0c4c3acd3789?auto=format&fit=crop&w=900&q=82')}
.visual-tile:nth-child(3){background-image:url('https://images.unsplash.com/photo-1695388474402-ed805a890d8d?q=80&w=2670&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D')}
.visual-tile:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,38,56,.06),rgba(16,38,56,.70));mask-image:none}
.visual-tile:after{color:#fff;text-shadow:0 10px 28px rgba(0,0,0,.34)}
.visual-number{color:rgba(255,255,255,.30);text-shadow:0 8px 20px rgba(0,0,0,.18)}


/* Restored visual layer: only the first hero photo is removed, all supporting images stay in-page */
.impact-photo,.culture-photo,.milestone-photo,.whistle-photo{position:relative;overflow:hidden;border-radius:24px;background-size:cover;background-position:center;border:1px solid rgba(4,77,118,.10);box-shadow:0 16px 44px rgba(32,77,100,.08)}
.impact-photo:before,.culture-photo:before,.milestone-photo:before,.whistle-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,38,56,.02),rgba(16,38,56,.46))}
.impact-photo{min-height:230px;margin-top:28px;background-image:url('https://images.unsplash.com/photo-1473341304170-971dccb5ac1e?auto=format&fit=crop&w=1400&q=82')}
.milestone-layout{display:grid;grid-template-columns:1fr .72fr;gap:20px;align-items:stretch}
.milestone-photo{min-height:100%;background-image:url('https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1400&q=82')}
.milestone-photo:after,.culture-photo:after,.whistle-photo:after{content:attr(data-label);position:absolute;left:22px;right:22px;bottom:20px;color:#fff;font-size:26px;line-height:1.05;font-weight:700;letter-spacing:-.035em;text-shadow:0 10px 28px rgba(0,0,0,.34)}
.culture-photo{height:180px;margin-bottom:24px}
.culture-photo.work{background-image:url('https://images.unsplash.com/photo-1517048676732-d65bc937f952?auto=format&fit=crop&w=1200&q=82')}
.culture-photo.partner{background-image:url('https://images.unsplash.com/photo-1552664730-d307ca884978?auto=format&fit=crop&w=1200&q=82')}
.whistle-photo{height:170px;margin-top:24px;background-image:url('https://images.unsplash.com/photo-1589829545856-d10d557cf95f?auto=format&fit=crop&w=1200&q=82')}

/* Keep the “Riconoscimenti e tappe” media rounded when the visual is
   replaced with a native Gutenberg Image block. */
.milestones-section .milestone-photo,
.milestones-section .wp-block-image,
.milestones-section .wp-block-image img {
  border-radius:24px;
}
.milestones-section .wp-block-image {
  overflow:hidden;
}

@media(max-width:1080px){.hero-layout,.story-layout,.sustain-layout,.whistle-card,.milestone-layout{grid-template-columns:1fr}.identity-stack,.visual-board,.impact-card{max-width:680px}.visual-board,.impact-card{position:relative;top:auto}.method-grid,.competence-strip,.green-grid,.whistle-grid{grid-template-columns:1fr 1fr}.milestone-photo{min-height:360px}.culture-grid{grid-template-columns:1fr}}
@media(max-width:760px){.impact-photo,.milestone-photo,.culture-photo,.whistle-photo{min-height:210px;height:auto}.hero h1{font-size:clamp(52px,17vw,78px)}.hero p{font-size:16px}.hub-card,.story-card,.impact-card,.whistle-card,.culture-card{padding:24px;border-radius:24px}.method-grid,.competence-strip,.green-grid,.whistle-grid,.visual-board{grid-template-columns:1fr}.visual-board{grid-auto-rows:190px}.visual-tile.big{grid-row:auto}.milestone-row{grid-template-columns:1fr;gap:4px;padding:16px}.milestone-row span{justify-self:start}}
