/* October 1 review: preserve the approved palette and page structure. */







.shared-container {max-width:1200px;padding-inline:24px;margin-inline:auto;box-sizing:border-box;}







.shared-cta {background:#071d49;color:white;padding:clamp(56px,6vw,88px) 0;position:relative;overflow:hidden;}







.shared-cta > .shared-container {display:grid;grid-template-columns:400px minmax(0,1fr);gap:clamp(28px,5vw,72px);position:relative;z-index:1;}







.shared-cta h2 {font:400 clamp(28px,3vw,40px)/1.13 'Inter Tight',sans-serif;margin:0 0 24px;}







.shared-cta p {color:#c9d8ee;line-height:1.6;}.shared-contact-links {display:flex;flex-direction:column;gap:12px;margin-top:24px;}.shared-contact-links a {min-height:44px;display:inline-flex;align-items:center;color:#fff;text-decoration:underline;text-underline-offset:4px;}







.shared-contact-form h3 {font-size:20px;margin:0 0 20px;}.shared-cta .location-form {display:grid;gap:16px;}.shared-cta label {display:grid;gap:6px;color:#d9e6f8;font-size:14px;}.shared-cta input,.shared-cta textarea {width:100%;min-width:0;color:#071d49;background:white;border:1px solid #b9cce7;border-radius:6px;padding:12px;box-sizing:border-box;}.shared-cta .form-row {display:grid;grid-template-columns:1fr 1fr;gap:16px;}.shared-cta .form-trap {position:absolute;left:-10000px;}.shared-cta button {background:#fff;color:#123a75;border-radius:24px;padding:14px 24px;min-height:44px;justify-self:start;}.shared-cta .form-guidance {font-size:12px;margin:0;}







.shared-cta .location-form {background:#f7faff;color:#071d49;padding:32px;border-radius:16px;}.shared-cta .location-form label {color:#123a75;}.shared-cta .location-form .form-guidance {color:#46546d;}.shared-cta .location-form button {background:#1766ff;color:#fff;}







.shared-footer {padding:64px 0!important;background:#04132f;color:white;}.shared-footer > .max-w-content {max-width:1200px;padding:0 24px;margin:auto;}.shared-footer > .max-w-content > .grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;padding-bottom:48px;}.shared-footer p {font-size:14px;line-height:1.5;margin-bottom:12px;}.shared-footer a {min-height:44px;}.shared-footer .pt-8 {padding-top:32px;display:flex;justify-content:space-between;gap:24px;}.shared-footer .pt-8 > .flex {display:flex;gap:24px;}.shared-footer .brand-lockup {display:inline-flex;margin-bottom:20px;}







.shared-cta::after,.secondary-page .page-hero::after,body.home #editoriale::after,body.home #recensioni::after {content:'';display:block;position:absolute;width:min(900px,90vw);height:260px;border:2px solid #8eb6ff;border-radius:50%;right:-80px;bottom:-150px;pointer-events:none;opacity:.55;transform:rotate(-9deg);}







.secondary-page .page-hero,body.home #editoriale,body.home #recensioni {position:relative;overflow:hidden;}.secondary-page .page-hero > .container,body.home #editoriale > div,body.home #recensioni > div {position:relative;z-index:1;}







@media(min-width:1001px){







 .patient-guide .guide-layout,.decalogo-page .reading-layout {display:grid!important;grid-template-columns:minmax(340px,38%) minmax(0,1fr)!important;gap:48px!important;}







 .patient-guide .guide-sidebar,.decalogo-page .chapter-sidebar {position:sticky!important;top:var(--sidebar-top,100px)!important;max-height:none!important;padding:0!important;}







 .patient-guide .guide-nav,.decalogo-page .chapter-sidebar nav {max-height:none!important;overflow:visible!important;padding-right:0!important;display:block!important;}







 .patient-guide .guide-nav a,.decalogo-page .chapter-sidebar nav a {display:flex!important;font-size:var(--nav-font,14px)!important;line-height:1.25!important;padding:var(--nav-padding,5px) 0!important;min-height:0!important;max-width:none!important;border-radius:0!important;}







 .patient-guide .guide-chapter {position:static!important;font-size:18px;margin:0 0 10px;padding:0!important;}







 .patient-guide .guide-nav .eyebrow,.decalogo-page .chapter-sidebar .eyebrow {margin:0 0 10px!important;}







 .patient-guide .sidebar-contact {display:flex!important;min-height:36px!important;padding:6px 0!important;margin:10px 0 0!important;}







}







@media(max-width:1000px){







 .patient-guide .guide-layout,.decalogo-page .reading-layout {display:block!important;}







 .patient-guide .guide-sidebar,.decalogo-page .chapter-sidebar {position:static!important;max-height:none!important;padding:0!important;margin-bottom:32px;}







 .patient-guide .guide-nav,.decalogo-page .chapter-sidebar nav {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:none!important;overflow:visible!important;gap:0 16px;padding:0!important;}







 .patient-guide .guide-nav a,.decalogo-page .chapter-sidebar nav a {display:flex!important;min-height:44px!important;max-width:none!important;padding:10px 0!important;border-radius:0!important;font-size:13px!important;}







 .patient-guide .guide-chapter,.patient-guide .guide-nav .eyebrow {position:static!important;grid-column:1/-1;display:block!important;width:auto!important;padding:0!important;}







 .patient-guide .sidebar-contact {display:flex!important;}.patient-guide .page-hero {padding-top:64px!important;}







 .shared-cta > .shared-container {grid-template-columns:1fr;}.shared-footer > .max-w-content > .grid {grid-template-columns:1fr;gap:32px;}







}







@media(max-width:500px){.shared-cta .form-row {grid-template-columns:1fr;}.shared-footer .pt-8 {flex-direction:column;}.patient-guide .guide-nav,.decalogo-page .chapter-sidebar nav {grid-template-columns:1fr!important;}}







body.home #main > section > .max-w-content, body.home footer > .max-w-content {width:100%!important;max-width:1200px!important;margin-inline:auto!important;padding-inline:24px!important;box-sizing:border-box;}







body.home #main h2 {font-size:clamp(28px,3vw,var(--section-title-max,48px))!important;line-height:1.13!important;}







@media(min-width:801px){body.home #main > section > .max-w-content > .grid:first-child,.review-intro-grid,.home-reviews-head,.editorial-head {display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;gap:clamp(28px,5vw,72px)!important;} .home-reviews-head > p{max-width:none;}.editorial-controls{justify-self:start;}}







.reviews-controls {display:flex;align-items:center;gap:12px;margin-bottom:20px;}







.reviews-controls button {min-width:44px;min-height:44px;border:1px solid #a4bad7;border-radius:24px;padding:8px 16px;color:#123a75;}







[data-review-track] {display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:24px;padding-bottom:0;scrollbar-width:none;}







[data-review-track]::-webkit-scrollbar {display:none;}







[data-review-track] > article {flex:0 0 100%;scroll-snap-align:start;box-sizing:border-box;}







.footer-directions {display:inline-flex;align-items:center;min-height:44px;color:#c5d9f4;font-size:12px;margin-left:12px;}







body.home #main > section:not(#top) {padding-block:clamp(56px,6vw,88px)!important;}







body.home .section-rail {margin-bottom:32px!important;}







body.home .home-reviews-head,body.home .editorial-head {margin-bottom:32px!important;}







@media(min-width:1101px){







 body.home #main > section > .max-w-content > .grid:first-child,body.home .review-intro-grid,body.home .home-reviews-head,body.home .editorial-head {grid-template-columns:400px minmax(0,1fr)!important;gap:clamp(28px,5vw,72px)!important;}







 body.home #main h2 {font-size:clamp(28px,2.5vw,min(36px,var(--section-title-max,36px))))!important;}







 [data-review-track] > article {flex-basis:calc((100% - 48px)/3);}







}#nav .primary-nav{border-inline:0;padding-inline:0;gap:clamp(2px,.6vw,16px)}#nav .primary-nav-link{font-weight:500;font-size:14px;padding-inline:.6rem!important}#nav .nav-actions{gap:12px}#nav .site-search-desktop{position:relative;width:44px;height:44px;border:0;padding:0;background:transparent;flex-shrink:0;box-shadow:none}#nav .site-search-desktop button{width:44px;height:44px;flex-basis:44px;background:transparent;color:#071d49;border:1px solid rgba(7,29,73,.18);border-radius:50%;z-index:2}#nav .site-search-desktop button:hover{background:rgba(255,255,255,.6);border-color:#1766ff}#nav .site-search-desktop input{position:absolute;right:0;top:calc(100% + 12px);width:0;opacity:0;visibility:hidden;pointer-events:none;height:44px;border:1px solid #c9d7e9;background:#f7faff;border-radius:999px;transition:width .2s,opacity .2s;padding:0}#nav .site-search-desktop.is-expanded input{width:220px;opacity:1;visibility:visible;pointer-events:auto;padding-inline:16px;box-shadow:0 4px 16px rgba(7,29,73,.08)}@media(min-width:1024px) and (max-width:1279px){#nav .primary-nav-link{font-size:12px;padding-inline:.35rem!important}#nav .nav-actions{gap:8px}}







@media(min-width:701px) and (max-width:1100px){[data-review-track] > article {flex-basis:calc((100% - 24px)/2);}}







footer .brand-lockup {padding:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;}







footer .brand-lockup img {width:230px!important;height:auto!important;border-radius:6px;}







#top h1 { font-size:clamp(40px,4.8vw,70px)!important;line-height:1.07!important;letter-spacing:-.035em!important; }







#top h1 .word:last-child {font-size:.82em;}







#top > .hero-photo {filter:blur(1.3px) saturate(.82);}







#top .hero-shade {background:linear-gradient(90deg,rgba(11,44,96,.42),rgba(11,44,96,.18))!important;}







#introduzione > .max-w-content, #bisogni > .max-w-content {width:100%;}







.review-intro-grid {grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)!important;gap:clamp(28px,5vw,72px)!important;align-items:start;}







.review-intro-grid h2 {font-size:clamp(28px,3.05vw,44px)!important;line-height:1.13!important;max-width:none!important;margin:0;}







#bisogni > .max-w-content > .grid {grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);}







.intro-decalogo {padding:13px 22px;border:1px solid #c9dcf6;border-radius:24px;background:#fff;color:#123a75;text-decoration:none;font-weight:600;}







.smile-rule {opacity:.32!important;}.smile-rule path {stroke-width:2.2!important;}







.need-row::before,.need-link::before {content:none!important;}







.review-footer-nav {display:grid;gap:4px;}.review-footer-nav a {color:#d4e4fc;min-height:44px;display:flex;align-items:center;}







.contact-options {max-width:1200px;margin:0 auto;padding:24px;display:flex;flex-wrap:wrap;gap:18px 32px;background:#edf3fb;color:#123a75;}







.contact-options span {display:flex;flex-direction:column;}.contact-options a {min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:4px;}







.patient-guide .guide-layout {grid-template-columns:minmax(240px,340px) minmax(0,1fr);gap:40px;}







.patient-guide .guide-nav a {padding:5px 8px;min-height:32px;font-size:13px;line-height:1.3;}







.patient-guide .guide-nav {scrollbar-width:auto;scrollbar-color:#7994b8 #e9eff7;}







.guide-answer {background:transparent!important;border:0!important;border-top:1px solid #d4deea!important;border-radius:0!important;padding:18px 0!important;box-shadow:none!important;}







.guide-answer > summary {padding:0 0 14px!important;background:transparent!important;}







.team-profile-bio {line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}.team-cv-body p {white-space:pre-line;}







.clinical-related-link {text-decoration:underline;text-underline-offset:4px;color:#1252af;}

/* HQ #667 — meeting-backed launch refinements, 2026-10-09. */
@media (min-width:1024px) {body.home #main > section > .max-w-content,body.home footer > .max-w-content {padding-inline:clamp(40px,4vw,64px)!important;}}
.site-search {display:flex;align-items:center;}.site-search input {min-width:0;border:1px solid rgba(7,29,73,.2);background:#fff;color:#071d49;}.site-search input:focus {border-color:#1766ff;outline:2px solid rgba(23,102,255,.2);outline-offset:1px;}.site-search button {border:0;background:#1766ff;color:#fff;font-weight:700;cursor:pointer;}
.site-search-desktop {width:clamp(130px,12vw,180px);}.site-search-desktop input {width:100%;height:42px;padding:0 12px;border-radius:999px 0 0 999px;}.site-search-desktop button {width:42px;height:42px;overflow:hidden;text-indent:-999px;border-radius:0 999px 999px 0;position:relative;}.site-search-desktop button::after {content:'⌕';position:absolute;inset:0;display:grid;place-items:center;text-indent:0;font-size:20px;}
.site-search-mobile {display:none;padding:16px 0 4px;}.site-search-mobile label {display:block;margin-bottom:8px;font-size:14px;font-weight:700;}.site-search-mobile > div {display:grid;grid-template-columns:1fr auto;}.site-search-mobile input {height:44px;padding:0 12px;border-radius:5px 0 0 5px;}.site-search-mobile button {min-height:44px;padding:0 16px;border-radius:0 5px 5px 0;}
.reviews-all {margin-top:30px;}.reviews-all a {display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#fff;font-weight:700;border-bottom:1px solid rgba(255,255,255,.55);}.home-reviews-grid {scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;}.home-review-card {scroll-snap-align:start;scroll-snap-stop:always;}.reviews-controls button:disabled {opacity:.35;cursor:not-allowed;}
.search-page .search-form-panel {max-width:760px;margin:0 auto 48px;}.search-page .search-form-panel form {display:grid;grid-template-columns:1fr auto;}.search-page .search-form-panel input {min-height:52px;border:1px solid #aab6c6;padding:0 16px;}.search-page .search-form-panel button {border:0;background:#1766ff;color:#fff;padding:0 24px;font-weight:700;}.search-results {display:grid;gap:20px;max-width:920px;margin:auto;}.search-result {border-top:1px solid #ccd4df;padding:24px 0;}.search-result h2 {font-size:clamp(24px,3vw,34px);margin:0 0 10px;}.search-result a {color:#1252af;font-weight:700;}
@media (max-width:1023px) {.site-search-desktop {display:none;}.site-search-mobile {display:block;}}.site-search .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1024px) and (max-width:1279px){.primary-nav-link{padding-inline:.35rem!important;font-size:12px}.site-search-desktop{width:110px;flex-shrink:0}.header-logo,.header-logo img{width:120px;height:72px}.nav-actions .header-cta{padding-inline:12px;font-size:12px}}.reviews-all a{color:#1252af;border-bottom-color:#1252af}.site-search-desktop{border:1px solid rgba(7,29,73,.18);border-radius:999px;background:rgba(255,255,255,.6);padding:0 3px 0 0;gap:0}.site-search-desktop input{border:0;background:transparent;height:44px;font-family:'DM Sans',sans-serif;font-size:14px;padding-inline:14px;box-shadow:none}.site-search-desktop button{flex:0 0 38px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#071d49;text-indent:0}.site-search-desktop button::after{content:none}.site-search-desktop:focus-within{border-color:#1766ff;box-shadow:0 0 0 3px rgba(23,102,255,.12)}.site-search-desktop input:focus{outline:none}.site-search button:hover{background:#1252af}.site-search-mobile input{border-radius:999px 0 0 999px;background:rgba(255,255,255,.7);padding-inline:16px}.site-search-mobile button{border-radius:0 999px 999px 0;background:#071d49}.search-page .container{width:100%;max-width:1200px;margin-inline:auto;padding-inline:clamp(24px,4vw,64px);box-sizing:border-box}.search-page .page-hero{padding-block:40px 56px}.search-page .page-hero h1{font-family:'Inter Tight',sans-serif;font-weight:300;font-size:clamp(42px,6vw,76px);line-height:1.05;letter-spacing:-.04em}.search-page .page-hero .hero-copy{max-width:600px;font-size:18px}.search-page .section{padding-block:48px 72px}.search-page .search-form-panel{max-width:none;margin:0 0 32px}.search-page .search-form-panel form{padding:6px;border:1px solid #c9d7e9;background:#f2f6fc;border-radius:999px;gap:8px}.search-page .search-form-panel input{border:0;background:transparent;color:#071d49;font-family:'DM Sans',sans-serif;font-size:17px;padding-inline:18px;min-width:0;border-radius:999px}.search-page .search-form-panel input:focus{outline:none}.search-page .search-form-panel form:focus-within{border-color:#1766ff;box-shadow:0 0 0 3px rgba(23,102,255,.12)}.search-page .search-form-panel button{display:flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;background:#071d49;min-height:52px;padding-inline:24px;font-family:'DM Sans',sans-serif}.search-page .search-form-panel button:hover{background:#1252af}.search-page .screen-reader-text{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.search-summary{color:#46546d;font-size:14px;line-height:1.6;margin-bottom:24px;overflow-wrap:anywhere}.search-results{max-width:none;gap:0}.search-result{padding:0;border-color:#dbe5f4}.search-result:last-child{border-bottom:1px solid #dbe5f4}.search-result h2{margin:0;font-family:'Inter Tight',sans-serif;font-size:clamp(23px,3vw,34px);line-height:1.25}.search-result h2 a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;color:#071d49;font-weight:400;text-decoration:none;min-height:84px;transition:color .2s}.search-result h2 a:hover{color:#1252af}.search-result h2 a>span:first-child{overflow-wrap:anywhere}.search-result-arrow{flex-shrink:0;color:#1766ff;font-size:24px}.search-result>p{color:#46546d;margin:0 0 24px;font-size:15px}.search-page button:focus-visible{outline:2px solid #1766ff;outline-offset:3px}@media(max-width:600px){.search-page .search-form-panel input{font-size:16px;padding-inline:12px}.search-page .search-form-panel button{padding-inline:16px;gap:8px}.search-page .search-form-panel button svg{display:none}.search-page .page-hero{padding-block:28px 40px}.search-result h2 a{gap:16px;padding-block:20px}}@media(min-width:1101px){ #nav .nav-inner,#nav .mobile-menu, body.home #main>section>.max-w-content, .shared-cta>.shared-container, .shared-footer>.max-w-content, .secondary-page .container{  width:90vw!important;max-width:none!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box; }}






.review-back {position:relative;display:inline-flex;margin:16px 24px;min-height:44px;align-items:center;color:#123a75;text-decoration:underline;}







.review-editorial-art {width:100%;height:120px;color:#1f5da9;background:#e9f1fc;margin-bottom:20px;}







.review-rotating {display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;}







.review-rotating .home-review-card {flex:0 0 min(85%,360px);scroll-snap-align:start;}







.review-carousel-control {min-height:44px;padding:8px 16px;border:1px solid #b3c8e3;border-radius:24px;color:#123a75;margin-bottom:16px;}







@media(min-width:1101px){#top > .relative {max-width:1200px!important;margin-inline:auto!important;padding-inline:24px!important;}#top h1,#top p.font-body,#top .hero-locations {max-width:min(400px,calc(40vw - 104px))!important;}#top > .hero-photo,#top .hero-shade{aspect-ratio:3 / 2!important;}}







@media(max-width:1100px){#top .hero-shade{background:linear-gradient(180deg,rgba(11,44,96,.20),rgba(11,44,96,.35) 55%,#0b2c60 100%)!important;}}







@media(max-width:800px){.review-intro-grid,#bisogni > .max-w-content > .grid {grid-template-columns:1fr!important;}.patient-guide .guide-layout{display:block;}.patient-guide .guide-nav a{min-height:44px;padding:10px 14px;}}







@media(max-width:700px){#top h1{font-size:clamp(36px,8.8vw,56px)!important;}.review-intro-grid h2{font-size:32px!important;}}















/* Full-bleed hero: yesterday's original, with a responsive CSS veil. */







.patient-guide .anchor-arrival {outline:none!important;}







.patient-guide .page-hero .guide-back {







 display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;







 color:#fff!important;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.4);







 border-radius:24px;text-decoration:none!important;line-height:1.35;margin-bottom:20px;







}







.patient-guide .page-hero .guide-back:hover {background:rgba(255,255,255,.16);border-color:#fff;}







.patient-guide .page-hero .guide-back:focus-visible {outline:3px solid #a8c9ff;outline-offset:4px;}







#top {height:auto!important;min-height:0!important;background:#0b2c60!important;align-items:center!important;}







#top > .hero-photo {inset:0!important;width:100%!important;height:100%!important;transform:none!important;object-fit:contain!important;object-position:right center!important;border:0!important;border-radius:0!important;box-shadow:none!important;opacity:1!important;aspect-ratio:auto!important;}







#top .hero-shade {inset:0!important;width:100%!important;height:100%!important;transform:none!important;border-radius:0!important;aspect-ratio:auto!important;background:linear-gradient(90deg,rgba(7,29,73,.97) 0%,rgba(7,29,73,.88) 25%,rgba(14,64,132,.45) 49%,rgba(31,100,180,.22) 100%)!important;}







#top > .relative {max-width:1200px!important;margin-inline:auto!important;padding:64px 24px!important;}







@media(min-width:1101px){







 #top {height:calc(100svh - var(--hero-top,71px))!important;min-height:0!important;}







 #top > .hero-photo {inset:0 0 0 auto!important;width:76%!important;height:100%!important;object-fit:contain!important;object-position:right center!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 12%,rgba(0,0,0,.8) 30%,#000 46%),linear-gradient(180deg,transparent 0%,#000 6%,#000 85%,transparent 100%)!important;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.25) 12%,rgba(0,0,0,.8) 30%,#000 46%),linear-gradient(180deg,transparent 0%,#000 6%,#000 85%,transparent 100%)!important;-webkit-mask-composite:source-in!important;mask-composite:intersect!important;}







 #top .hero-shade {background:linear-gradient(90deg,#0b2c60 0%,#0b2c60 28%,rgba(11,44,96,.99) 33%,rgba(11,44,96,.94) 38%,rgba(11,44,96,.78) 44%,rgba(11,44,96,.54) 50%,rgba(11,44,96,.3) 58%,rgba(11,44,96,.16) 68%,rgba(11,44,96,.12) 100%)!important;}







 /* Apply the fade at the actual photograph edge, not its letterboxed wrapper. */







 #top > .hero-photo {inset:50% calc(25px - clamp(48px,6vw,110px)) auto auto!important;padding-right:clamp(48px,6vw,110px)!important;box-sizing:content-box!important;width:min(90%,calc((100svh - var(--hero-top,71px)) * 1.6))!important;height:auto!important;aspect-ratio:4 / 3!important;transform:translateY(-50%)!important;-webkit-mask-image:radial-gradient(ellipse 50% 72% at 50% 50%,#000 0%,#000 40%,rgba(0,0,0,.9) 55%,rgba(0,0,0,.55) 72%,rgba(0,0,0,.18) 88%,transparent 100%),linear-gradient(90deg,transparent 0%,rgba(0,0,0,.3) 10%,rgba(0,0,0,.8) 22%,#000 35%,#000 65%,rgba(0,0,0,.8) 76%,rgba(0,0,0,.3) 85%,transparent 91%,transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.55) 7%,#000 17%,#000 76%,rgba(0,0,0,.5) 90%,transparent 100%)!important;mask-image:radial-gradient(ellipse 50% 72% at 50% 50%,#000 0%,#000 40%,rgba(0,0,0,.9) 55%,rgba(0,0,0,.55) 72%,rgba(0,0,0,.18) 88%,transparent 100%),linear-gradient(90deg,transparent 0%,rgba(0,0,0,.3) 10%,rgba(0,0,0,.8) 22%,#000 35%,#000 65%,rgba(0,0,0,.8) 76%,rgba(0,0,0,.3) 85%,transparent 91%,transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.55) 7%,#000 17%,#000 76%,rgba(0,0,0,.5) 90%,transparent 100%)!important;}







 #top > .relative {padding-block:clamp(16px,3svh,40px)!important;}







 #top h1,#top p.font-body,#top .hero-locations {max-width:400px!important;}







 #top h1 {font-size:clamp(38px,8.3svh,84px)!important;margin-bottom:clamp(12px,2svh,24px)!important;}







 #top p.font-body {font-size:clamp(13px,1.9svh,18px)!important;line-height:1.45!important;margin-bottom:clamp(12px,2svh,24px)!important;}







 #top .hero-locations {margin-bottom:clamp(12px,2svh,24px)!important;}







}







@media(min-width:1101px) and (max-height:650px){







 #top .hero-location-director {font-size:10px;line-height:1.2;}







 #top .hero-location-address {font-size:11px;}







 #top .hero-location-name {font-size:17px;}







 #top .hero-locations a {gap:4px;}







 #top > .relative > .flex a {padding-block:10px!important;}







}







@media(max-width:1100px){







 #top > .hero-photo {height:75vw!important;object-position:center top!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 48%,rgba(0,0,0,.9) 60%,rgba(0,0,0,.65) 73%,rgba(0,0,0,.3) 87%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 48%,rgba(0,0,0,.9) 60%,rgba(0,0,0,.65) 73%,rgba(0,0,0,.3) 87%,transparent 100%)!important;}







 #top .hero-shade {background:linear-gradient(180deg,rgba(11,44,96,.14) 0px,rgba(11,44,96,.18) 30vw,rgba(11,44,96,.24) 42vw,rgba(11,44,96,.38) 52vw,rgba(11,44,96,.62) 62vw,rgba(11,44,96,.87) 70vw,#0b2c60 78vw,#0b2c60 100%)!important;}







 #top > .relative {padding-top:calc(75vw + 28px)!important;padding-bottom:48px!important;}







 #top h1,#top p.font-body,#top .hero-locations {max-width:640px!important;}







 #top .smile-rule {display:none!important;}







}







@media(min-width:701px) and (max-width:1100px) and (orientation:landscape){







 #top {height:calc(100svh - var(--hero-top,71px))!important;min-height:0!important;}







 #top > .hero-photo {inset:50% 0 auto auto!important;width:min(64%,calc((100svh - var(--hero-top,71px)) * 1.333333))!important;height:auto!important;aspect-ratio:4 / 3!important;transform:translateY(-50%)!important;object-position:right center!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.6) 30%,#000 48%),linear-gradient(180deg,transparent 0%,#000 8%,#000 82%,transparent 100%)!important;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 12%,rgba(0,0,0,.6) 30%,#000 48%),linear-gradient(180deg,transparent 0%,#000 8%,#000 82%,transparent 100%)!important;-webkit-mask-composite:source-in!important;mask-composite:intersect!important;}







 #top .hero-shade {background:linear-gradient(90deg,#0b2c60 0%,#0b2c60 32%,rgba(11,44,96,.88) 42%,rgba(11,44,96,.5) 52%,rgba(11,44,96,.15) 72%,rgba(11,44,96,.12) 100%)!important;}







 #top > .relative {padding:24px!important;}







 #top h1,#top p.font-body,#top .hero-locations {max-width:34%!important;}







 #top h1 {font-size:clamp(34px,6.8svh,56px)!important;margin-bottom:16px!important;}







 #top p.font-body {font-size:14px!important;line-height:1.45!important;margin-bottom:16px!important;}







 #top .hero-locations {margin-bottom:18px!important;gap:12px!important;}







 #top .hero-location-name {font-size:16px!important;}







 #top .hero-location-address,#top .hero-location-director {font-size:10px!important;line-height:1.25!important;}







 #top > .relative > .flex {max-width:34%;gap:8px!important;}







 #top > .relative > .flex a {padding:10px 16px!important;}







}







@media(min-width:701px) and (max-width:1100px) and (orientation:landscape) and (max-height:650px){







 #top > .relative {padding-block:12px!important;}







 #top h1,#top p.font-body,#top .hero-locations {max-width:38%!important;}







 #top h1 {font-size:36px!important;line-height:1.08!important;margin-bottom:12px!important;}







 #top p.font-body {font-size:13px!important;margin-bottom:12px!important;}







 #top .hero-locations {margin-bottom:12px!important;}







 #top > .relative > .flex {max-width:38%;}







}















/* Carlo, 2 October: corrected faces; a delicate peripheral veil around the logo. */







#top .hero-photo {pointer-events:none;filter:none!important;}







#top .hero-photo > img {display:block;width:100%;height:100%;object-fit:contain;object-position:inherit;filter:saturate(.94);}







#top .hero-photo::after {content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 37% 34% at 61% 48%,rgba(11,44,96,.015) 0%,rgba(11,44,96,.04) 30%,rgba(11,44,96,.17) 70%,rgba(11,44,96,.25) 100%);}







@media(min-width:1101px){#top .hero-photo::after{right:clamp(48px,6vw,110px);}}







@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .hero-photo{top:var(--hero-top,71px)!important;}#top > .relative{padding-top:calc(75vw + var(--hero-top,71px) + 28px)!important;}}














/* Center the people and logo within the mobile/tablet photo panel.






   The supplied photograph has additional empty space on its left. */






@media(max-width:1100px){






 #top .hero-photo > img {transform:translateX(-9%);-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 92%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 92%,transparent 100%);}






 #top .hero-photo::after {background:radial-gradient(ellipse 37% 34% at 52% 48%,rgba(11,44,96,.015) 0%,rgba(11,44,96,.04) 30%,rgba(11,44,96,.17) 70%,rgba(11,44,96,.25) 100%);}






}













/* Luca: retain the earlier photograph on phones and tablets. */






@media(max-width:1100px){






 #top .hero-photo > img {content:url(../images/hero-team-20261002-mobile.webp);transform:none;-webkit-mask-image:none;mask-image:none;}






 #top .hero-photo::after {display:none;}






}













/* Carlo's explicitly centered version for phones and tablets. */






@media(max-width:1100px){#top .hero-photo > img{content:url(../images/hero-team-20261005-centered.webp);}}






@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){






 #top > .hero-photo{height:86.945813vw!important;}






 #top > .relative{padding-top:calc(86.945813vw + 28px)!important;}






}






@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .relative{padding-top:calc(86.945813vw + var(--hero-top,71px) + 28px)!important;}}












/* Keep the original desktop framing and shade; adjust only the edge masks. */





@media(min-width:1101px){





 #top > .hero-photo {-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 8%,rgba(0,0,0,.9) 17%,#000 23%,#000 65%,rgba(0,0,0,.8) 76%,rgba(0,0,0,.3) 85%,transparent 91%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.4) 6%,#000 16%,#000 77%,rgba(0,0,0,.45) 91%,transparent 100%)!important;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.4) 8%,rgba(0,0,0,.9) 17%,#000 23%,#000 65%,rgba(0,0,0,.8) 76%,rgba(0,0,0,.3) 85%,transparent 91%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.4) 6%,#000 16%,#000 77%,rgba(0,0,0,.45) 91%,transparent 100%)!important;}





}





/* Intermediate portrait fade: preserve upper faces, gently soften the lower ring. */





@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){





 #top > .hero-photo {-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 62%,rgba(0,0,0,.95) 72%,rgba(0,0,0,.75) 82%,rgba(0,0,0,.35) 93%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 62%,rgba(0,0,0,.95) 72%,rgba(0,0,0,.75) 82%,rgba(0,0,0,.35) 93%,transparent 100%)!important;}





 #top .hero-shade {background:none!important;}





 #top .hero-photo::after {display:block;background:linear-gradient(180deg,rgba(11,44,96,.04) 0%,rgba(11,44,96,.07) 42%,rgba(11,44,96,.18) 60%,rgba(11,44,96,.32) 78%,rgba(11,44,96,.45) 100%);}





}










/* Fade the photograph itself, excluding its responsive right padding. */




@media(min-width:1101px){




 #top > .hero-photo {--photo-edge-mask:linear-gradient(90deg,transparent 0%,#000 clamp(110px,10vw,150px),#000 calc(100% - clamp(75px,7vw,110px)),transparent 100%),linear-gradient(180deg,transparent 0%,#000 clamp(55px,5vw,80px),#000 calc(100% - clamp(75px,7vw,110px)),transparent 100%);-webkit-mask-image:none!important;mask-image:none!important;}




 #top .hero-photo > img,#top .hero-photo::after {-webkit-mask-image:var(--photo-edge-mask);mask-image:var(--photo-edge-mask);-webkit-mask-composite:source-in;mask-composite:intersect;}




}




@media(min-width:1101px) and (max-width:1399px){




 #top > .hero-photo {--photo-edge-mask:linear-gradient(90deg,transparent 0%,#000 140px,#000 calc(100% - 105px),transparent 100%),linear-gradient(180deg,transparent 0%,#000 85px,#000 calc(100% - 115px),transparent 100%);}




}




@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){




 #top .hero-photo::after {background:linear-gradient(180deg,rgba(11,44,96,.06) 0%,rgba(11,44,96,.1) 42%,rgba(11,44,96,.24) 60%,rgba(11,44,96,.39) 78%,rgba(11,44,96,.52) 100%);}




}








/* Eased opacity ramps eliminate the visible rectangular edge. */



@media(min-width:1101px){



 #top > .hero-photo {--photo-edge-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.025) 35px,rgba(0,0,0,.12) 75px,rgba(0,0,0,.35) 120px,rgba(0,0,0,.65) 170px,rgba(0,0,0,.88) 220px,#000 270px,#000 calc(100% - 170px),rgba(0,0,0,.88) calc(100% - 135px),rgba(0,0,0,.5) calc(100% - 85px),rgba(0,0,0,.12) calc(100% - 35px),transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 22px,rgba(0,0,0,.4) 50px,rgba(0,0,0,.85) 80px,#000 110px,#000 calc(100% - 145px),rgba(0,0,0,.8) calc(100% - 105px),rgba(0,0,0,.3) calc(100% - 55px),rgba(0,0,0,.04) calc(100% - 18px),transparent 100%);}



}






/* Carlo's 12:39 face correction, preserving the full supplied composition. */


@media(max-width:1100px){#top .hero-photo > img{content:url(../images/hero-team-20261005-1239.webp);}}


@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .hero-photo{height:86.572700vw!important;}#top > .relative{padding-top:calc(86.572700vw + 28px)!important;}}


@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .relative{padding-top:calc(86.572700vw + var(--hero-top,71px) + 28px)!important;}}


@media(min-width:1101px){#top > .hero-photo{aspect-ratio:1348 / 1167!important;width:min(90%,calc((100svh - var(--hero-top,71px)) * 1.15509854))!important;}#top .hero-photo::after{background:radial-gradient(ellipse 37% 34% at 54% 48%,rgba(11,44,96,.015) 0%,rgba(11,44,96,.04) 30%,rgba(11,44,96,.17) 70%,rgba(11,44,96,.25) 100%);}}




/* Longer eased right transition, with separate soft corner masks. */

@media(min-width:1101px){

 #top > .hero-photo {--photo-edge-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.025) 35px,rgba(0,0,0,.12) 75px,rgba(0,0,0,.35) 120px,rgba(0,0,0,.65) 170px,rgba(0,0,0,.88) 220px,#000 270px,#000 calc(100% - 235px),rgba(0,0,0,.95) calc(100% - 200px),rgba(0,0,0,.78) calc(100% - 150px),rgba(0,0,0,.43) calc(100% - 95px),rgba(0,0,0,.12) calc(100% - 45px),rgba(0,0,0,.015) calc(100% - 15px),transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.08) 22px,rgba(0,0,0,.4) 50px,rgba(0,0,0,.85) 80px,#000 110px,#000 calc(100% - 145px),rgba(0,0,0,.8) calc(100% - 105px),rgba(0,0,0,.3) calc(100% - 55px),rgba(0,0,0,.04) calc(100% - 18px),transparent 100%),radial-gradient(ellipse 190px 150px at 100% 0%,transparent 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.65) 60%,#000 100%),radial-gradient(ellipse 210px 175px at 100% 100%,transparent 0%,rgba(0,0,0,.15) 25%,rgba(0,0,0,.65) 60%,#000 100%);}

}

/* Smooth the portrait bottom roll-off rather than ending with a dark strip. */

@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){

 #top > .hero-photo {-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 64%,rgba(0,0,0,.98) 72%,rgba(0,0,0,.9) 78%,rgba(0,0,0,.7) 84%,rgba(0,0,0,.42) 90%,rgba(0,0,0,.15) 96%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 64%,rgba(0,0,0,.98) 72%,rgba(0,0,0,.9) 78%,rgba(0,0,0,.7) 84%,rgba(0,0,0,.42) 90%,rgba(0,0,0,.15) 96%,transparent 100%)!important;}

 #top .hero-photo::after {background:linear-gradient(180deg,rgba(11,44,96,.06) 0%,rgba(11,44,96,.1) 42%,rgba(11,44,96,.22) 60%,rgba(11,44,96,.32) 74%,rgba(11,44,96,.39) 86%,rgba(11,44,96,.42) 100%);}

}


/* Carlo's selected version: slightly smaller, delicately veiled, smoothly blended. */
@media(max-width:1100px){#top .hero-photo > img{content:url(../images/hero-team-20261005-1329.webp);}}
@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .hero-photo{left:5%!important;right:5%!important;width:90%!important;height:78.251232vw!important;}#top > .relative{padding-top:calc(78.251232vw + 28px)!important;}#top .hero-photo::after{background:linear-gradient(180deg,rgba(11,44,96,.08) 0%,rgba(11,44,96,.12) 42%,rgba(11,44,96,.26) 60%,rgba(11,44,96,.38) 74%,rgba(11,44,96,.44) 86%,rgba(11,44,96,.46) 100%);}}
@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .relative{padding-top:calc(78.251232vw + var(--hero-top,71px) + 28px)!important;}}
@media(min-width:1101px){#top > .hero-photo{aspect-ratio:1218 / 1059!important;width:min(81%,calc((100svh - var(--hero-top,71px)) * 1.03512748))!important;}#top .hero-photo::after{background:radial-gradient(ellipse 37% 34% at 54% 48%,rgba(11,44,96,.035) 0%,rgba(11,44,96,.08) 30%,rgba(11,44,96,.22) 70%,rgba(11,44,96,.3) 100%);}}
@media(min-width:701px) and (max-width:1100px) and (orientation:landscape){#top > .hero-photo{width:min(57.6%,calc((100svh - var(--hero-top,71px)) * 1.03512748))!important;aspect-ratio:1218 / 1059!important;}}

@media(max-width:700px), (min-width:701px) and (max-width:1100px) and (orientation:portrait){#top .hero-photo > img,#top .hero-photo::after{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.2) 7%,rgba(0,0,0,.7) 12%,#000 18%,#000 82%,rgba(0,0,0,.7) 88%,rgba(0,0,0,.2) 93%,rgba(0,0,0,.05) 97%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 3%,rgba(0,0,0,.2) 7%,rgba(0,0,0,.7) 12%,#000 18%,#000 82%,rgba(0,0,0,.7) 88%,rgba(0,0,0,.2) 93%,rgba(0,0,0,.05) 97%,transparent 100%);}}

/* Mobile/tablet: no horizontal colour fades; retain the vertical bottom blend. */
@media(max-width:1100px){
 #top .hero-photo > img,#top .hero-photo::after{-webkit-mask-image:none!important;mask-image:none!important;}
 #top .hero-photo::after{background:linear-gradient(180deg,rgba(11,44,96,.08) 0%,rgba(11,44,96,.12) 42%,rgba(11,44,96,.26) 60%,rgba(11,44,96,.38) 74%,rgba(11,44,96,.44) 86%,rgba(11,44,96,.46) 100%);}
}
@media(min-width:701px) and (max-width:1100px) and (orientation:landscape){
 #top > .hero-photo{-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 8%,#000 82%,transparent 100%)!important;mask-image:linear-gradient(180deg,transparent 0%,#000 8%,#000 82%,transparent 100%)!important;}
}

/* Full-width mobile/tablet photograph, native 1218:1059 proportions. */
@media(max-width:1100px){
 #top{height:auto!important;min-height:0!important;}
 #top > .hero-photo{inset:0 0 auto 0!important;width:100%!important;height:86.945813vw!important;aspect-ratio:1218 / 1059!important;transform:none!important;padding:0!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 64%,rgba(0,0,0,.98) 72%,rgba(0,0,0,.9) 78%,rgba(0,0,0,.7) 84%,rgba(0,0,0,.42) 90%,rgba(0,0,0,.15) 96%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 64%,rgba(0,0,0,.98) 72%,rgba(0,0,0,.9) 78%,rgba(0,0,0,.7) 84%,rgba(0,0,0,.42) 90%,rgba(0,0,0,.15) 96%,transparent 100%)!important;}
 #top .hero-photo > img{object-fit:contain!important;object-position:center top!important;}
 #top .hero-shade{background:none!important;}
 #top > .relative{padding-top:calc(86.945813vw + 28px)!important;padding-bottom:48px!important;}
 #top h1,#top p.font-body,#top .hero-locations{max-width:640px!important;}
 #top > .relative > .flex{max-width:640px!important;}
}
@media(min-width:701px) and (max-width:1100px) and (orientation:portrait){#top > .relative{padding-top:calc(86.945813vw + var(--hero-top,71px) + 28px)!important;}}

/* Tablet shares desktop's side-by-side hero; mobile keeps the full-width photo. */
@media(min-width:701px) and (max-width:1100px){
 #top{height:calc(100svh - var(--hero-top,71px))!important;min-height:640px!important;}
 #top > .hero-photo{inset:50% 0 auto auto!important;width:64%!important;height:auto!important;aspect-ratio:1218 / 1059!important;transform:translateY(-50%)!important;-webkit-mask-image:none!important;mask-image:none!important;--tablet-edge-mask:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.08) 5%,rgba(0,0,0,.4) 12%,rgba(0,0,0,.8) 20%,#000 28%,#000 80%,rgba(0,0,0,.8) 88%,rgba(0,0,0,.25) 96%,transparent 100%),linear-gradient(180deg,transparent 0%,rgba(0,0,0,.4) 5%,#000 12%,#000 80%,rgba(0,0,0,.4) 93%,transparent 100%);}
 #top .hero-photo > img,#top .hero-photo::after{-webkit-mask-image:var(--tablet-edge-mask)!important;mask-image:var(--tablet-edge-mask)!important;-webkit-mask-composite:source-in;mask-composite:intersect;}
 #top .hero-photo::after{background:radial-gradient(ellipse 37% 34% at 54% 48%,rgba(11,44,96,.035) 0%,rgba(11,44,96,.08) 30%,rgba(11,44,96,.22) 70%,rgba(11,44,96,.3) 100%);}
 #top > .relative{padding:28px 24px!important;}
 #top h1,#top p.font-body,#top .hero-locations,#top > .relative > .flex{max-width:38%!important;}
 #top h1{font-size:clamp(34px,5vw,52px)!important;line-height:1.1!important;margin-bottom:20px!important;}
 #top p.font-body{font-size:14px!important;line-height:1.45!important;margin-bottom:20px!important;}
 #top .hero-locations{gap:12px!important;margin-bottom:20px!important;}
 #top .hero-location-name{font-size:16px!important;}
 #top .hero-location-address,#top .hero-location-director{font-size:10px!important;line-height:1.25!important;}
 #top > .relative > .flex{gap:8px!important;flex-wrap:wrap!important;}
 #top > .relative > .flex a{padding:10px 16px!important;}
}
