
/* Giochi di Fiuto · Homepage Experience v21 */
.gdf-home-guide{--guide-line:rgba(16,40,37,.13);--guide-soft:#eef4f0;--guide-coral:#d96f59;padding:clamp(2.6rem,5vw,5.4rem) 0 1rem;font-family:var(--v20-font)}
.gdf-guide-head{max-width:760px;margin:0 0 clamp(1.8rem,3vw,2.8rem)}
.gdf-guide-head h2,.gdf-scent-world h2,.gdf-knowledge-band h2,.gdf-legacy-path h2,.gdf-network-teaser h2{font-size:clamp(1.8rem,3vw,3rem)!important;line-height:1.04;letter-spacing:-.04em;margin:.25rem 0 .75rem;color:var(--v20-ink)}
.gdf-guide-head>p:last-child,.gdf-world-copy>p:last-child{max-width:650px;color:var(--v20-muted);font-size:1.04rem;line-height:1.65}
.gdf-intent-map{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--guide-line);border-bottom:1px solid var(--guide-line)}
.gdf-intent{position:relative;display:flex;flex-direction:column;min-height:330px;padding:2rem clamp(1.2rem,2.3vw,2.2rem);color:var(--v20-ink);text-decoration:none;border-right:1px solid var(--guide-line);transition:background .2s ease,transform .2s ease}
.gdf-intent:last-child{border-right:0}.gdf-intent:hover{background:#fff}.gdf-intent:focus-visible{outline:3px solid rgba(20,127,128,.25);outline-offset:-3px}
.gdf-intent-art{position:relative;height:82px;margin-bottom:1.2rem}.gdf-intent-art svg{width:96px;height:54px;overflow:visible;fill:none;stroke:var(--v20-teal);stroke-width:1.7;stroke-linecap:round;stroke-dasharray:3 5}.gdf-intent-art svg circle{fill:var(--guide-coral);stroke:none}
.gdf-intent-kicker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--v20-teal);margin-bottom:.45rem}.gdf-intent strong{font-size:1.45rem;letter-spacing:-.025em}.gdf-intent>span:not(.gdf-intent-art):not(.gdf-intent-kicker){margin-top:.55rem;color:var(--v20-muted);line-height:1.55}.gdf-intent em{margin-top:auto;padding-top:1.3rem;font-style:normal;font-size:.88rem;font-weight:750}
.odor{position:absolute;border-radius:50%;background:var(--v20-teal);opacity:.22}.odor-a{width:8px;height:8px;left:8px;top:11px}.odor-b{width:4px;height:4px;left:34px;top:36px}.odor-c{width:12px;height:12px;left:62px;top:4px;opacity:.12}.odor-d{width:5px;height:5px;left:83px;top:43px}
.gdf-scent-world{display:grid;grid-template-columns:minmax(0,.85fr) minmax(430px,1.15fr);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(4.5rem,8vw,8rem) 0}
.gdf-world-copy{max-width:520px}.gdf-orbit{position:relative;min-height:430px}.gdf-orbit:before,.gdf-orbit:after{content:"";position:absolute;left:50%;top:50%;border:1px solid rgba(20,127,128,.16);border-radius:50%;transform:translate(-50%,-50%)}.gdf-orbit:before{width:330px;height:330px}.gdf-orbit:after{width:215px;height:215px;border-style:dashed}
.orbit-core,.orbit-node{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;color:var(--v20-ink);z-index:2}.orbit-core{left:50%;top:50%;width:112px;height:112px;transform:translate(-50%,-50%);border-radius:50%;background:var(--v20-ink);color:#fff}.orbit-core span{font-size:.63rem;letter-spacing:.18em}.orbit-core strong{font-size:1.25rem;letter-spacing:.06em}.orbit-node{width:118px;height:72px;background:var(--v20-paper);border:1px solid var(--guide-line);border-radius:50%;box-shadow:0 8px 30px rgba(14,42,37,.04)}.orbit-node span{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:var(--v20-muted)}.orbit-node strong{font-size:.96rem}.orbit-learn{left:50%;top:3%;transform:translateX(-50%)}.orbit-play{left:3%;top:50%;transform:translateY(-50%)}.orbit-compete{right:3%;top:50%;transform:translateY(-50%)}.orbit-network{left:50%;bottom:3%;transform:translateX(-50%)}.orbit-node:hover{border-color:var(--v20-teal);color:var(--v20-teal)}
.gdf-knowledge-band{display:grid;grid-template-columns:.85fr 1.5fr;gap:3rem;padding:clamp(2.8rem,5vw,4.5rem) clamp(1.5rem,4vw,4rem);background:var(--v20-ink);color:#fff;border-radius:22px}.gdf-knowledge-band h2{color:#fff!important;margin-bottom:0}.gdf-knowledge-links{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}.gdf-knowledge-links a{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;column-gap:.8rem;padding:1.15rem;text-decoration:none;color:#fff;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.gdf-mini-icon{grid-row:1/3;align-self:center;color:#78d3d0;font-weight:800;font-size:1.1rem}.gdf-knowledge-links strong{font-size:.98rem}.gdf-knowledge-links small{color:rgba(255,255,255,.62);margin-top:.15rem}.gdf-knowledge-links a:hover{background:rgba(255,255,255,.05)}
.gdf-legacy-path{display:grid;grid-template-columns:.8fr 1.35fr;gap:clamp(2rem,5vw,5rem);padding:clamp(4.5rem,8vw,7rem) 0;align-items:end}.gdf-legacy-path>div p:not(.eyebrow){color:var(--v20-muted);line-height:1.6}.gdf-text-link{display:inline-block;margin-top:.8rem;color:var(--v20-teal);font-weight:800;text-decoration:none}.gdf-legacy-path ol{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:0;border-top:1px solid var(--guide-line)}.gdf-legacy-path li{position:relative;padding:1.4rem .7rem 0;border-right:1px solid var(--guide-line);min-height:92px}.gdf-legacy-path li:last-child{border-right:0}.gdf-legacy-path li:before{content:"";position:absolute;top:-5px;left:.7rem;width:9px;height:9px;border-radius:50%;background:var(--v20-teal)}.gdf-legacy-path li span{display:block;color:var(--v20-muted);font-size:.68rem;margin-bottom:.35rem}.gdf-legacy-path li strong{font-size:.84rem}
.gdf-network-teaser{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,5rem);align-items:center;padding:clamp(2.5rem,5vw,4rem);background:#edf3ef;border-radius:22px;margin-bottom:clamp(3rem,6vw,6rem)}.gdf-network-art{position:relative;min-height:210px}.gdf-network-art svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:rgba(20,127,128,.32);stroke-width:1.3;stroke-dasharray:3 5}.net{position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;border:4px solid var(--v20-teal);z-index:2;box-shadow:0 0 0 7px rgba(20,127,128,.08)}.n1{left:8%;top:57%}.n2{left:29%;top:20%}.n3{left:47%;top:51%}.n4{left:70%;top:18%}.n5{left:87%;top:58%}.n6{left:39%;top:76%;border-color:var(--guide-coral)}
@media(max-width:900px){.gdf-intent-map{grid-template-columns:1fr}.gdf-intent{min-height:240px;border-right:0;border-bottom:1px solid var(--guide-line)}.gdf-intent:last-child{border-bottom:0}.gdf-scent-world{grid-template-columns:1fr}.gdf-orbit{min-height:390px;max-width:520px;width:100%;margin:auto}.gdf-knowledge-band,.gdf-legacy-path,.gdf-network-teaser{grid-template-columns:1fr}.gdf-legacy-path ol{margin-top:1rem}}
@media(max-width:600px){.gdf-home-guide{padding-top:2rem}.gdf-orbit{min-height:330px}.gdf-orbit:before{width:270px;height:270px}.gdf-orbit:after{width:170px;height:170px}.orbit-node{width:94px;height:62px}.orbit-play{left:0}.orbit-compete{right:0}.gdf-knowledge-band{padding:2rem 1.2rem;border-radius:16px}.gdf-knowledge-links{grid-template-columns:1fr}.gdf-legacy-path ol{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--guide-line);margin-left:.4rem}.gdf-legacy-path li{min-height:58px;border-right:0;border-bottom:1px solid var(--guide-line);padding:.6rem 0 .6rem 1.2rem}.gdf-legacy-path li:before{top:1rem;left:-5px}.gdf-network-teaser{padding:1.6rem;border-radius:16px}.gdf-network-art{min-height:160px}}


/* ============================================================
   HOME VISUAL v27
   Visual layer only: same information architecture, more image,
   depth, rhythm and recognizable "scent" language.
   ============================================================ */

.hero.hero-home{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr)!important;
  gap:clamp(2rem,5vw,5.4rem)!important;
  align-items:center!important;
  min-height:clamp(570px,68vw,730px)!important;
  padding:clamp(3rem,6vw,5.6rem) 0!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 12% 18%,rgba(241,199,91,.18),transparent 27%),
    radial-gradient(circle at 47% 85%,rgba(203,197,242,.22),transparent 30%),
    linear-gradient(115deg,#fbfaf5 0%,#f3f6f2 58%,#e9f2ef 100%)!important;
}
.hero.hero-home:before{
  background:
    radial-gradient(circle at 23% 74%,rgba(24,185,187,.19) 0 2px,transparent 3px),
    radial-gradient(circle at 31% 68%,rgba(239,130,108,.22) 0 2px,transparent 3px),
    radial-gradient(circle at 37% 78%,rgba(203,197,242,.28) 0 3px,transparent 4px)!important;
  background-size:93px 83px,131px 117px,167px 151px!important;
  opacity:.55!important;
}
.hero.hero-home:after{
  width:520px!important;height:360px!important;right:20%!important;top:25%!important;
  border:1px dashed rgba(24,185,187,.18)!important;
  transform:rotate(-11deg)!important;
}
.hero.hero-home .hero-copy{
  max-width:650px!important;
  padding-left:max(20px,calc((100vw - 1280px)/2))!important;
  z-index:4!important;
}
.hero.hero-home h1{
  font-size:clamp(3.4rem,6vw,6.8rem)!important;
  line-height:.9!important;
  letter-spacing:-.065em!important;
  max-width:720px!important;
}
.hero.hero-home .lead{
  max-width:560px!important;
  font-size:clamp(1.03rem,1.45vw,1.2rem)!important;
}
.hero.hero-home .actions{display:flex!important;gap:.75rem!important;flex-wrap:wrap!important;margin-top:1.8rem!important}
.hero.hero-home .button{min-height:48px!important;padding-inline:1.1rem!important;border-radius:12px!important}
.hero.hero-home .button-secondary{background:rgba(255,255,255,.72)!important;backdrop-filter:blur(12px)!important}

.gdf-v27-hero-visual{
  position:relative;z-index:3;
  align-self:stretch;
  min-height:500px;
  display:flex;align-items:center;
  padding-right:max(0px,calc((100vw - 1280px)/2));
}
.gdf-v27-hero-frame{
  position:relative;width:min(100%,720px);aspect-ratio:1.18/1;
  margin-left:auto;overflow:hidden;
  border-radius:44% 19% 34% 17% / 20% 36% 22% 38%;
  box-shadow:0 34px 80px rgba(16,39,35,.18);
  transform:rotate(1.6deg);
  background:#dce8e4;
}
.gdf-v27-hero-frame:before{
  content:"";position:absolute;inset:0;z-index:2;pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.42);
  border-radius:inherit;
}
.gdf-v27-hero-frame:after{
  content:"";position:absolute;inset:auto -12% -18% 20%;height:48%;z-index:2;
  background:linear-gradient(12deg,rgba(24,185,187,.34),rgba(241,199,91,.18) 43%,rgba(203,197,242,.22) 71%,transparent);
  filter:blur(34px);transform:rotate(-8deg);pointer-events:none;
}
.gdf-v27-hero-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 48%;transform:scale(1.03)}
.gdf-v27-scent-dot{position:absolute;z-index:4;border-radius:50%;background:#fff;box-shadow:0 0 0 8px rgba(24,185,187,.12)}
.gdf-v27-scent-dot.d1{width:7px;height:7px;left:5%;bottom:23%}
.gdf-v27-scent-dot.d2{width:4px;height:4px;left:17%;bottom:15%;background:#ef826c}
.gdf-v27-scent-dot.d3{width:9px;height:9px;left:27%;bottom:28%;background:#f1c75b}

/* Intent cards become three distinct visual scenes, without stock-photo look. */
.gdf-intent-map{
  gap:14px!important;border:0!important;
  grid-template-columns:repeat(3,1fr)!important;
}
.gdf-intent{
  min-height:355px!important;
  border:0!important;border-radius:24px!important;
  overflow:hidden!important;padding:1.8rem!important;
  box-shadow:0 12px 36px rgba(16,39,35,.08)!important;
  transform:translateZ(0);
}
.gdf-intent:before,.gdf-intent:after{content:"";position:absolute;pointer-events:none}
.gdf-intent:before{
  width:270px;height:270px;right:-110px;top:-105px;border-radius:50%;
  border:1px dashed rgba(16,39,35,.13);box-shadow:0 0 0 45px rgba(255,255,255,.15),0 0 0 90px rgba(255,255,255,.08)
}
.gdf-intent:after{
  left:-8%;right:-8%;bottom:-52px;height:150px;border-radius:50%;
  transform:rotate(-7deg);filter:blur(1px)
}
.gdf-intent--detection{background:linear-gradient(145deg,#e8f7f6 0%,#f8fbf8 56%,#e1f0ed 100%)!important}
.gdf-intent--detection:after{background:linear-gradient(90deg,rgba(24,185,187,.30),rgba(24,185,187,.03))}
.gdf-intent--trail{background:linear-gradient(145deg,#fff3dc 0%,#fffaf0 57%,#f8e9cc 100%)!important}
.gdf-intent--trail:after{background:linear-gradient(90deg,rgba(239,130,108,.30),rgba(241,199,91,.08))}
.gdf-intent--search{background:linear-gradient(145deg,#f0edff 0%,#faf9ff 58%,#e8e4f7 100%)!important}
.gdf-intent--search:after{background:linear-gradient(90deg,rgba(143,122,194,.28),rgba(203,197,242,.07))}
.gdf-intent:hover{transform:translateY(-5px)!important;box-shadow:0 20px 48px rgba(16,39,35,.12)!important}
.gdf-intent-art{height:112px!important;margin-bottom:1.45rem!important;z-index:2}
.gdf-intent-art svg{width:145px!important;height:80px!important;stroke-width:1.35!important}
.gdf-intent strong,.gdf-intent>span,.gdf-intent em{position:relative;z-index:2}
.gdf-intent strong{font-size:1.65rem!important}
.gdf-intent-kicker{font-size:.68rem!important;letter-spacing:.14em!important}
.gdf-intent em{font-weight:800!important}

/* More editorial orbit, like a navigable scent-map rather than a diagram. */
.gdf-scent-world{
  position:relative;margin:clamp(3.5rem,7vw,7rem) 0!important;
  padding:clamp(3rem,6vw,5.5rem)!important;
  border-radius:32px;
  background:
    radial-gradient(circle at 79% 48%,rgba(24,185,187,.13),transparent 26%),
    linear-gradient(135deg,#fff 0%,#f3f6f3 100%);
  box-shadow:inset 0 0 0 1px rgba(16,39,35,.08);
}
.gdf-orbit:before{border-color:rgba(24,185,187,.24)!important;box-shadow:0 0 0 38px rgba(24,185,187,.025),0 0 0 76px rgba(24,185,187,.018)}
.gdf-orbit:after{border-color:rgba(239,130,108,.24)!important}
.orbit-core{box-shadow:0 16px 38px rgba(16,39,35,.18)!important}
.orbit-node{background:rgba(255,255,255,.82)!important;backdrop-filter:blur(10px);box-shadow:0 12px 30px rgba(16,39,35,.07)!important}

/* Science band: generated visual + dark editorial copy. */
.gdf-knowledge-band{
  position:relative!important;
  grid-template-columns:minmax(260px,.85fr) .72fr 1.3fr!important;
  gap:clamp(1.4rem,3vw,3rem)!important;
  align-items:stretch!important;
  overflow:hidden!important;
  padding:1rem!important;
  border-radius:30px!important;
  background:linear-gradient(112deg,#073d43 0%,#0c6269 58%,#103a3d 100%)!important;
  box-shadow:0 25px 60px rgba(7,61,67,.18);
}
.gdf-v27-science-visual{min-height:270px;border-radius:22px;overflow:hidden;position:relative}
.gdf-v27-science-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(7,61,67,.34))}
.gdf-v27-science-visual img{width:100%;height:100%;object-fit:cover;display:block}
.gdf-knowledge-intro{padding:1.6rem .25rem 1.6rem .5rem;align-self:center}
.gdf-knowledge-links{align-self:stretch!important}
.gdf-knowledge-links a{min-height:82px!important;align-content:center}
.gdf-knowledge-band .eyebrow{color:#83e1de!important}

/* Detection Legacy gets visual hierarchy rather than looking like another text block. */
.gdf-legacy-path{
  position:relative!important;
  margin:clamp(4rem,7vw,7rem) 0!important;
  padding:clamp(3rem,6vw,5.4rem)!important;
  border-radius:30px;
  background:
    linear-gradient(120deg,rgba(239,130,108,.08),transparent 42%),
    linear-gradient(180deg,#fff,#f8f5f0);
  box-shadow:inset 0 0 0 1px rgba(16,39,35,.08);
}
.gdf-legacy-path:after{
  content:"DL";position:absolute;right:4%;top:2%;font-size:clamp(6rem,15vw,13rem);
  font-weight:800;line-height:1;color:rgba(16,39,35,.035);letter-spacing:-.09em;pointer-events:none
}
.gdf-legacy-path ol{position:relative;z-index:2}
.gdf-legacy-path li:before{box-shadow:0 0 0 8px rgba(24,185,187,.10)}

/* Network closes the visual story with a real landscape strip. */
.gdf-network-teaser{
  position:relative!important;overflow:hidden!important;
  grid-template-columns:.8fr .95fr!important;
  min-height:330px;
  padding:clamp(2.4rem,5vw,4rem)!important;
  background:linear-gradient(100deg,#edf5f1 0%,rgba(237,245,241,.96) 48%,rgba(237,245,241,.38) 100%)!important;
}
.gdf-v27-network-landscape{position:absolute;inset:auto 0 0 38%;height:48%;z-index:0;opacity:.82}
.gdf-v27-network-landscape:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#edf5f1 0%,transparent 45%)}
.gdf-v27-network-landscape img{width:100%;height:100%;object-fit:cover;object-position:right center;display:block}
.gdf-network-art{z-index:2!important}
.gdf-network-teaser>div:last-child{position:relative;z-index:3;padding:1rem 0}

/* Homepage's generic lower cards receive a little rhythm too, without touching other pages. */
body.section-home .site-main .card{border-radius:18px!important}
body.section-home .site-main .cards .card:nth-child(3n+1){background:linear-gradient(160deg,#fff,#f1f8f6)!important}
body.section-home .site-main .cards .card:nth-child(3n+2){background:linear-gradient(160deg,#fff,#fff8ec)!important}
body.section-home .site-main .cards .card:nth-child(3n+3){background:linear-gradient(160deg,#fff,#f6f3ff)!important}

@media(max-width:980px){
  .hero.hero-home{grid-template-columns:1fr!important;padding-bottom:0!important}
  .hero.hero-home .hero-copy{padding-right:20px!important;max-width:850px!important}
  .gdf-v27-hero-visual{min-height:420px;padding:0 20px 0 max(20px,calc((100vw - 1280px)/2))}
  .gdf-v27-hero-frame{width:100%;max-width:none;aspect-ratio:16/8;margin-bottom:-30px;border-radius:34px}
  .gdf-knowledge-band{grid-template-columns:1fr 1fr!important}
  .gdf-v27-science-visual{grid-row:1/3;min-height:100%}
  .gdf-knowledge-links{grid-column:2}
}
@media(max-width:760px){
  .hero.hero-home h1{font-size:clamp(3.2rem,15vw,5.2rem)!important}
  .gdf-v27-hero-visual{min-height:330px;padding-inline:20px}
  .gdf-v27-hero-frame{aspect-ratio:1.5/1;border-radius:28px;margin-bottom:-12px}
  .gdf-intent-map{grid-template-columns:1fr!important}
  .gdf-intent{min-height:290px!important}
  .gdf-scent-world{padding:2rem 1.25rem!important;border-radius:22px}
  .gdf-knowledge-band{grid-template-columns:1fr!important;padding:1rem!important}
  .gdf-v27-science-visual{grid-row:auto;min-height:210px}
  .gdf-knowledge-intro{padding:1rem .35rem .4rem}
  .gdf-knowledge-links{grid-column:auto}
  .gdf-legacy-path{padding:2.2rem 1.3rem!important;border-radius:22px}
  .gdf-network-teaser{grid-template-columns:1fr!important;min-height:420px}
  .gdf-v27-network-landscape{left:0;height:42%;opacity:.75}
  .gdf-v27-network-landscape:before{background:linear-gradient(180deg,#edf5f1 0%,transparent 55%)}
}


/* ============================================================
   HOME VISUAL v27.1
   Bring the real rendering closer to the visual concept:
   compact editorial hero, wider image, visible CTA, less empty air.
   ============================================================ */

body.section-home .site-main{
  padding-top:0!important;
}

body.section-home .content-shell{
  padding-top:0!important;
}

/* Break only the hero out of the normal content width. */
body.section-home .hero.hero-home{
  width:100vw!important;
  max-width:none!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
  margin-top:0!important;
  min-height:560px!important;
  padding:0!important;
  grid-template-columns:minmax(420px,.9fr) minmax(620px,1.35fr)!important;
  gap:clamp(1rem,2.5vw,3rem)!important;
  align-items:stretch!important;
  background:
    radial-gradient(circle at 14% 26%,rgba(241,199,91,.13),transparent 28%),
    radial-gradient(circle at 43% 80%,rgba(203,197,242,.15),transparent 28%),
    linear-gradient(110deg,#fbfaf6 0%,#f6f7f3 48%,#eef5f2 100%)!important;
}

/* Editorial text block, similar to the concept rendering. */
body.section-home .hero.hero-home .hero-copy{
  align-self:center!important;
  width:min(100%,620px)!important;
  max-width:620px!important;
  padding:54px 0 54px max(28px,calc((100vw - 1480px)/2))!important;
}

body.section-home .hero.hero-home .hero-kicker-row{
  margin-bottom:.85rem!important;
}

body.section-home .hero.hero-home .eyebrow{
  font-size:.78rem!important;
  letter-spacing:.14em!important;
  font-weight:800!important;
}

body.section-home .hero.hero-home h1{
  margin:0!important;
  max-width:585px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(3.8rem,4.45vw,5.15rem)!important;
  font-weight:700!important;
  line-height:.94!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}

body.section-home .hero.hero-home .lead{
  max-width:500px!important;
  margin-top:1.45rem!important;
  font-size:1.08rem!important;
  line-height:1.6!important;
}

body.section-home .hero.hero-home .actions{
  display:flex!important;
  gap:.8rem!important;
  flex-wrap:wrap!important;
  margin-top:1.7rem!important;
}

body.section-home .hero.hero-home .button{
  min-height:48px!important;
  padding:0 1.2rem!important;
  border-radius:8px!important;
  font-size:.83rem!important;
  letter-spacing:.015em!important;
}

body.section-home .hero.hero-home .button-primary{
  background:#11888d!important;
  border-color:#11888d!important;
  color:#fff!important;
}

body.section-home .hero.hero-home .button-secondary{
  background:rgba(255,255,255,.72)!important;
  border:1px solid #11888d!important;
  color:#0d6468!important;
  backdrop-filter:blur(10px)!important;
}

/* The photograph becomes part of the hero, not a card floating inside it. */
body.section-home .gdf-v27-hero-visual{
  min-height:560px!important;
  align-self:stretch!important;
  padding:34px max(26px,calc((100vw - 1480px)/2)) 34px 0!important;
  display:flex!important;
  align-items:center!important;
}

body.section-home .gdf-v27-hero-frame{
  width:100%!important;
  max-width:850px!important;
  height:492px!important;
  aspect-ratio:auto!important;
  margin:0 0 0 auto!important;
  border-radius:28px 0 0 28px!important;
  transform:none!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:hidden!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.65) 6%,#000 15%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.65) 6%,#000 15%,#000 100%);
}

body.section-home .gdf-v27-hero-frame:before{
  display:none!important;
}

body.section-home .gdf-v27-hero-frame:after{
  inset:auto -6% -10% 10%!important;
  height:43%!important;
  filter:blur(28px)!important;
  opacity:.72!important;
}

body.section-home .gdf-v27-hero-frame img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:58% 50%!important;
  transform:scale(1.01)!important;
}

/* Keep the decorative scent details subtle in the real page. */
body.section-home .hero.hero-home:after{
  opacity:.42!important;
  right:32%!important;
  top:34%!important;
}

body.section-home .hero.hero-home:before{
  opacity:.34!important;
}

@media (min-width:1500px){
  body.section-home .hero.hero-home{
    min-height:575px!important;
    grid-template-columns:minmax(460px,.82fr) minmax(720px,1.28fr)!important;
  }
  body.section-home .gdf-v27-hero-visual{min-height:575px!important}
  body.section-home .gdf-v27-hero-frame{height:505px!important}
}

@media (max-width:1180px){
  body.section-home .hero.hero-home{
    grid-template-columns:minmax(380px,.95fr) minmax(500px,1.05fr)!important;
  }
  body.section-home .hero.hero-home h1{
    font-size:clamp(3.45rem,5vw,4.55rem)!important;
  }
  body.section-home .gdf-v27-hero-frame{height:455px!important}
}

@media (max-width:980px){
  body.section-home .hero.hero-home{
    width:100vw!important;
    grid-template-columns:1fr!important;
    min-height:auto!important;
    gap:0!important;
  }
  body.section-home .hero.hero-home .hero-copy{
    width:auto!important;
    max-width:760px!important;
    padding:42px 24px 24px!important;
  }
  body.section-home .hero.hero-home h1{
    max-width:680px!important;
    font-size:clamp(3.25rem,8.5vw,4.8rem)!important;
  }
  body.section-home .gdf-v27-hero-visual{
    min-height:0!important;
    padding:0 24px 34px!important;
  }
  body.section-home .gdf-v27-hero-frame{
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    aspect-ratio:16/7.5!important;
    border-radius:22px!important;
    -webkit-mask-image:none;
    mask-image:none;
  }
}

@media (max-width:620px){
  body.section-home .hero.hero-home .hero-copy{
    padding:34px 20px 22px!important;
  }
  body.section-home .hero.hero-home h1{
    font-size:clamp(2.8rem,14vw,4rem)!important;
    line-height:.96!important;
  }
  body.section-home .hero.hero-home .lead{
    font-size:1rem!important;
  }
  body.section-home .hero.hero-home .actions{
    align-items:stretch!important;
  }
  body.section-home .hero.hero-home .button{
    flex:1 1 100%!important;
    justify-content:center!important;
  }
  body.section-home .gdf-v27-hero-visual{
    padding:0 20px 28px!important;
  }
  body.section-home .gdf-v27-hero-frame{
    aspect-ratio:1.38/1!important;
  }
}
