/* TORINO — accepted typography and motion. Local, licensed fonts. */
@font-face{font-family:'Cormorant Garamond';src:url('../fonts/cormorant-latin-ext.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:Sora;src:url('../fonts/sora-variable.woff2') format('woff2');font-style:normal;font-weight:100 800;font-display:swap}
@font-face{font-family:'DM Sans';src:url('../fonts/dm-sans-variable.woff2') format('woff2');font-style:normal;font-weight:100 1000;font-display:swap}
:root{--torino-sans:'DM Sans',sans-serif;--torino-serif:Sora,sans-serif;--wp--preset--font-family--body:'DM Sans',sans-serif;--wp--preset--font-family--display:Sora,sans-serif;--variant-ease:cubic-bezier(.22,.68,.22,1);--variant-time:620ms;--torino-line:#c6aa7624;--torino-bg:#0d0b0e;--torino-surface:#151214;--torino-burgundy:#4b1822}
body{font-family:var(--torino-sans);font-optical-sizing:auto;font-size:16px;line-height:1.8}
h1,h2,h3{font-style:normal!important;font-family:var(--torino-serif)!important;font-weight:500;letter-spacing:-.045em;text-wrap:balance}
/* One continuous canvas owns the light: no section-sized glow rectangles. */
body{background:var(--torino-bg)}
.wp-site-blocks{background:radial-gradient(ellipse 85vw 520px at 0 2100px,#4b101b16 0%,#4b101b08 42%,#4b101b00 76%),radial-gradient(ellipse 85vw 720px at 100% calc(100% - 900px),#4b101b12 0%,#4b101b06 40%,#4b101b00 76%)}
.torino-main{isolation:isolate;position:relative;background:none}
.torino-welcome:before{content:none}
.torino-shell{max-width:1360px}
/* Eliminate competing legacy motion and perimeter effects, rather than layering them. */
.torino-motion .torino-title-line,.torino-motion .torino-hero-description,.torino-motion .torino-hero-buttons,.torino-benefits .torino-benefits-grid,.torino-about-social,.torino-main:has(.torino-wedding .torino-offer-surface){animation:none}
.torino-benefits .torino-benefit:before,.torino-benefits .torino-benefit:after,.torino-offer-surface:before,.torino-offer-surface:after,.torino-about-social .wp-block-button:before,.torino-about-social .wp-block-button:after,.torino-section+.torino-section:before,.torino-welcome:after{content:none}
.torino-reveal.will-reveal{opacity:1;transform:none;transition:none}
.torino-highlight:hover,.torino-benefits .torino-benefit:hover,.torino-about-social .wp-block-button:hover,.torino-about-social .wp-block-button:focus-within{transform:none}
.torino-highlight:hover .torino-icon img{filter:drop-shadow(0 0 5px #c6aa762b)}
/* Smooth photographic falloff; no veil is placed over the musicians' faces. */
.torino-hero{background:transparent;overflow:clip;min-height:clamp(730px,52vw,920px)}
.torino-hero-media picture{mask-image:linear-gradient(to bottom,#000 48%,#000e 63%,#0009 76%,#0003 90%,transparent 100%)}
.torino-hero:after{background:linear-gradient(90deg,#0d0b0e33,transparent 48%),linear-gradient(0deg,#0d0b0e 0%,#0d0b0eaa 8%,transparent 28%)}
.torino-main .torino-hero-title{font-family:"Cormorant Garamond",Georgia,serif!important;font-size:clamp(60px,5.5vw,108px);line-height:1.15;letter-spacing:-.02em;font-weight:500;max-width:46%;margin:27px 0 30px;text-wrap:wrap;overflow-wrap:normal}
.torino-title-line{line-height:1.15}
.torino-hero-content{padding-top:clamp(180px,13vw,235px);padding-bottom:100px}
.torino-hero-description{font-size:16px;line-height:1.8;max-width:355px;margin-bottom:30px}
.torino-eyebrow{font-size:10px;letter-spacing:.2em;font-weight:600;gap:0}
.torino-eyebrow:before{content:none;display:none}
.torino-main .torino-page-title{font-size:clamp(40px,4.3vw,72px);line-height:1.13;letter-spacing:-.055em;font-weight:500;color:var(--torino-white);max-width:1100px}
.torino-page-heading{position:relative;padding-block:clamp(55px,6vw,88px) clamp(45px,5vw,68px);isolation:isolate}
.torino-page-heading:after{content:'';display:block;margin-top:28px;width:56px;height:2px;background:linear-gradient(90deg,var(--torino-gold),#c6aa7626);transform-origin:left}
.torino-main :is(.torino-section-title,.torino-section .torino-section-title,.torino-final-cta .torino-section-title){font-size:clamp(31px,3.25vw,52px);line-height:1.2;letter-spacing:-.05em;font-weight:500;margin-block:0 36px}
.torino-main .torino-welcome .torino-section-title{margin-top:24px;line-height:1.25}
.torino-main :is(.torino-card-title,.torino-about-title,.torino-contact-title,.torino-member-name){font-size:clamp(20px,1.7vw,26px);font-weight:500;letter-spacing:-.035em;line-height:1.4}
.torino-main .torino-benefits .torino-card-title{color:var(--torino-white);font-weight:500}
.torino-reading-copy p,.torino-welcome-copy p,.torino-about-card p,.torino-about-card li,.torino-benefits .torino-benefit p,.torino-wedding .torino-offer-card p,.torino-included :is(ul,.torino-price-note),.torino-addons .torino-addon p:not(.torino-service-price),.torino-faq .torino-faq-item p,.torino-events .torino-reading-copy p,.torino-technical :is(p,ul),.torino-contact-card p:not(.torino-contact-number){font-size:16px;line-height:1.85}
.torino-main .torino-welcome-copy p.torino-welcome-lead,.torino-reading-copy p.torino-text-lead{font-family:var(--torino-sans);font-size:clamp(22px,1.95vw,29px);line-height:1.6;font-weight:400;letter-spacing:-.025em}
.torino-section{padding-block:clamp(60px,6vw,96px)}
.torino-welcome{gap:clamp(40px,7vw,115px);padding-block:100px 76px}
.torino-about-content .torino-about-intro-card{max-width:76ch;margin-bottom:12px}
.torino-about-content .torino-about-intro-card p{font-size:17px;line-height:1.9}
.torino-benefits-grid{gap:22px}
/* Softer surfaces: quiet edges and local tonal depth, with roomy reading tracks. */
.torino-benefits .torino-benefit,.torino-about-content .torino-about-card:not(.torino-about-intro-card),.torino-contact-card,.torino-wedding .torino-offer-surface,.torino-addons .torino-offer-surface,.torino-final-cta{border:1px solid #c6aa7629;border-radius:18px;background:radial-gradient(ellipse at 0 0,#4b101b1c,transparent 80%),linear-gradient(145deg,#ffffff04,transparent 85%);box-shadow:0 20px 60px -40px #0005}
.torino-benefits .torino-benefit{overflow:hidden;position:relative;isolation:isolate;row-gap:20px;transition:border-color var(--variant-time),background var(--variant-time)}
.torino-benefits .torino-benefit:before{content:'';display:block;position:absolute;left:0;top:28%;bottom:28%;width:2px;padding:0;mask:none;-webkit-mask:none;background:linear-gradient(transparent,#c6aa7699,transparent);opacity:0;transition:opacity var(--variant-time)}
.torino-offer-card{border-left-color:#c6aa7645;padding-left:26px}
.torino-offer-grid{column-gap:60px;row-gap:42px}
.torino-final-cta{position:relative;isolation:isolate;padding:clamp(32px,4.6vw,66px) clamp(24px,5vw,72px);margin-block:32px 48px!important}
.torino-final-cta:before{content:none}
.torino-final-cta .torino-section-title{color:var(--torino-gold)}
.torino-final-cta p{max-width:56ch}
.torino-highlights{margin-top:-12px!important}
.torino-highlights-grid{padding:28px 8px;border-color:#c6aa7620;border-radius:16px;background:linear-gradient(120deg,#191315,#131113 55%,#171214);box-shadow:0 28px 60px -36px #0009;backdrop-filter:none;-webkit-backdrop-filter:none}
.torino-highlight h2{font-family:var(--torino-sans)!important;letter-spacing:-.02em;font-size:15px;font-weight:500}
.torino-highlight p{font-size:12px;line-height:1.65}
/* Navigation and controls share the same measured ease. */
.torino-header-inner{min-height:104px;transition:min-height 450ms var(--variant-ease)}
.torino-header .wp-block-site-logo img{transition:width 450ms var(--variant-ease)}
.torino-header.is-scrolled{background:linear-gradient(#0d0b0ef7,#0d0b0ee8 48%,#0d0b0e99 70%,#0d0b0e00);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding-bottom:28px;pointer-events:none}
.torino-header.is-scrolled .torino-header-inner{pointer-events:auto}
.torino-nav{font-size:14px;font-weight:500;letter-spacing:0}
.torino-nav .wp-block-navigation-item:not(.torino-nav-cta) a:after{bottom:7px;height:2px;transform-origin:right;transition:transform 420ms var(--variant-ease);background:linear-gradient(90deg,var(--torino-gold),#c6aa7660)}
.torino-nav .wp-block-navigation-item a:is(:hover,:focus-visible,[aria-current=page]):after{transform-origin:left}
.wp-block-button__link,.torino-about-social .wp-block-button__link,.torino-nav-cta a{font-family:var(--torino-sans);font-size:14px;font-weight:500;letter-spacing:0;border-radius:7px;min-height:52px;transition:transform 420ms var(--variant-ease),background 420ms,border-color 420ms,box-shadow 420ms}
.torino-button-primary .wp-block-button__link{background:linear-gradient(115deg,#c6aa76,#d1b987);border-color:#c6aa76}
.torino-button-primary .wp-block-button__link:hover,.torino-button-outline .wp-block-button__link:hover{transform:none;box-shadow:none}
.torino-button-text .wp-block-button__link{border-radius:0;background:none;font-size:14px;min-height:44px}
.wp-block-button__link:before,.wp-block-button__link:after{transition:transform 420ms var(--variant-ease)}
.torino-about-social .wp-block-button__link{padding:14px 22px;background:transparent;border-color:#c6aa7640}
.torino-about-social .wp-block-button{transition:none}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--torino-gold);outline-offset:5px}
/* Media stays fully framed; only the surrounding depth reacts. */
.torino-video,.torino-gallery-section .torino-gallery .wp-block-image,.torino-offer-photo-card .torino-offer-attraction-photo{border-radius:14px;border-color:#c6aa762b;box-shadow:0 16px 34px -26px #000a;transition:box-shadow var(--variant-time),border-color var(--variant-time),transform var(--variant-time) var(--variant-ease)}
.torino-gallery-section .torino-gallery .wp-block-image{outline:0;background:transparent}
.torino-gallery-section .torino-gallery .wp-block-image img,.torino-video-play img,.torino-video-play:hover img{transform:none;transition:opacity var(--variant-time);opacity:1}
.torino-play-symbol{width:58px;height:58px;background:#0d0b0e99;transition:background 420ms,border-color 420ms,transform 420ms var(--variant-ease)}
.torino-video-play:hover .torino-play-symbol{transform:none}
.torino-gallery-open:focus-visible{outline-offset:-5px}
.torino-gallery-open{border-radius:14px;min-height:44px}
.torino-recording h3{font:500 16px/1.6 var(--torino-sans)!important;letter-spacing:-.01em;margin-top:17px}
.torino-main .torino-addon .torino-service-price,.torino-contact-number{font-family:var(--torino-serif);font-size:clamp(28px,3vw,42px);font-weight:400;letter-spacing:-.045em}
.torino-offer-photo-card .torino-offer-attraction-photo{box-shadow:0 22px 44px -30px #0008;margin-bottom:26px!important}
/* Photo deck: manual pacing, quiet rear cards, legible captions throughout the transition. */
.torino-about-stack.is-enhanced .torino-about-photo-card{transition:transform 760ms var(--variant-ease),opacity 580ms var(--variant-ease);transform:translate(-14px,20px) scale(.96);border-color:#c6aa764a;border-radius:14px;box-shadow:0 20px 50px -28px #000a}
.torino-about-stack.is-enhanced [data-position="0"]{transform:translate(0,0) rotate(0);opacity:1;z-index:6}
.torino-about-stack.is-enhanced [data-position="1"]{transform:translate(11px,8px) rotate(3deg);opacity:.7;z-index:5}
.torino-about-stack.is-enhanced [data-position="2"]{transform:translate(-8px,14px) rotate(-3deg);opacity:.4;z-index:4}
.torino-about-stack.is-enhanced .torino-about-photo-card[aria-hidden=true] figcaption{visibility:visible;opacity:0}
.torino-about-photo-card figcaption{transition:opacity 450ms var(--variant-ease);opacity:1}
.torino-about-photo-card figcaption strong{font-family:var(--torino-serif);font-weight:500}
.torino-about-stack-controls button{border:1px solid #c6aa7630;border-radius:50%;width:44px;height:44px;background:#171217}
.torino-about-stack-controls svg{width:22px}
.torino-about-stack-prev:hover svg,.torino-about-stack-next:hover svg{transform:none}
/* Stable photo stage with two layers: decoding finishes before the next image enters. */
.torino-lightbox{width:min(1200px,96vw);height:min(900px,94dvh);max-width:96vw;max-height:94dvh;padding:64px 66px 60px;border:1px solid #c6aa762b;border-radius:18px;background:#100d11;box-shadow:0 30px 110px #0008;overflow:hidden}
.torino-lightbox[open]{display:flex;flex-direction:column}
.variant-lightbox-stage{display:grid;place-items:center;position:relative;flex:1;min-height:0;isolation:isolate}
.torino-lightbox .variant-lightbox-stage img{grid-area:1/1;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;min-width:0;min-height:0;border-radius:3px}
.torino-lightbox .variant-lightbox-stage img[hidden]{display:none}
.torino-lightbox::backdrop{background:#080609e8;backdrop-filter:none;animation:variant-backdrop-in 500ms var(--variant-ease) both}
.torino-lightbox.is-closing::backdrop{animation:variant-backdrop-out 320ms var(--variant-ease) both}
@keyframes variant-backdrop-in{from{background:#08060900}to{background:#080609e8}}
@keyframes variant-backdrop-out{to{background:#08060900}}
.torino-lightbox button{position:absolute;display:grid;place-items:center;width:44px;height:44px;border:1px solid #c6aa763b;background:#181419;color:var(--torino-white);border-radius:50%;font-size:22px;transition:background 350ms,border-color 350ms}
.torino-lightbox button:hover{background:#30232c;border-color:#c6aa7699}
.torino-lightbox-close{top:10px;right:12px}
.torino-lightbox .variant-photo-prev{top:calc(50% - 22px);left:10px}
.torino-lightbox .variant-photo-next{top:calc(50% - 22px);right:10px}
.torino-lightbox .variant-photo-count{position:absolute;bottom:17px;left:0;right:0;font:500 12px/1.8 var(--torino-sans);text-align:center;letter-spacing:.12em;color:var(--torino-muted)}
.torino-faq-item{border-color:#c6aa7629;transition:border-color 420ms}
.torino-faq-item[open]{border-color:#c6aa7660;background:none}
.torino-faq-item[open]>:not(summary){animation:none}
.torino-faq-item summary{font-size:16px;font-weight:500;transition:color 420ms}
.torino-faq-item summary:after{transition:transform 480ms var(--variant-ease)}
.torino-faq-item summary:is(:hover,:focus-visible){color:var(--torino-gold)}
.torino-footer-inner,.torino-footer-bottom{border-color:#c6aa7624}

@media(hover:hover) and (pointer:fine){
 .torino-benefits .torino-benefit:hover{border-color:#c6aa7666}
 .torino-benefits .torino-benefit:hover:before{opacity:1}
 .torino-video:has(.torino-video-play:hover),.torino-gallery-section .torino-gallery .wp-block-image:hover{transform:translateY(-3px);box-shadow:0 22px 44px -24px #0009;border-color:#c6aa7677}
 .torino-play-symbol:hover,.torino-video-play:hover .torino-play-symbol{background:#592b38cc;border-color:#d1b987}
 .wp-block-button:not(.torino-button-text) .wp-block-button__link:hover,.torino-nav-cta a:hover{transform:translateY(-2px);box-shadow:0 12px 26px -18px #c6aa7680}
 .torino-button-play .wp-block-button__link:hover:before{transform:translateX(3px)}
 .torino-button-text .wp-block-button__link:hover:after{transform:translate(3px,-3px)}
}
@media(max-width:999px){
 .torino-hero{min-height:0}
 .torino-hero-content{padding-top:156px;padding-bottom:calc(100vw * .84)}
 .torino-main .torino-hero-title{max-width:100%;font-size:clamp(62px,9.2vw,90px);letter-spacing:-.02em}
 .torino-hero-media picture{mask-image:linear-gradient(transparent,#000 20%,#000 75%,#000a 88%,transparent)}
 .torino-hero:after{background:linear-gradient(0deg,#0d0b0e,transparent 15%,transparent 78%,#0d0b0e)}
 .torino-header-inner{min-height:94px}
 .torino-nav .wp-block-navigation__responsive-container.is-menu-open{animation:none;background:radial-gradient(ellipse at 0 20%,#4b101b24,transparent 80%),var(--torino-bg)!important}
 .torino-nav .is-menu-open .wp-block-navigation-item:not(.torino-nav-cta){border-bottom:1px solid #c6aa7624}
 .torino-nav .is-menu-open .wp-block-navigation-item a:after{display:none}
 .torino-nav .is-menu-open .wp-block-navigation-item a[aria-current=page]{color:var(--torino-gold)}
 .torino-nav .is-menu-open a{font-family:var(--torino-serif);font-size:24px;letter-spacing:-.035em}
 .torino-final-cta .wp-block-buttons{margin-top:28px}
 .torino-technical-grid{column-gap:26px}
}
@media(max-width:599px){
 .torino-header-inner{min-height:87px}
 .torino-main .torino-hero-title{font-size:clamp(51px,12.9vw,76px);line-height:1.14;letter-spacing:-.02em;margin-block:25px}
 .torino-hero-content{padding-top:139px;padding-bottom:calc(100vw * .89)}
 .torino-hero-description{font-size:15px;line-height:1.8;max-width:330px}
 .torino-hero-eyebrow{font-size:9px;letter-spacing:.13em;gap:0}
 .torino-hero-buttons{gap:10px}
 .torino-hero-buttons .wp-block-button__link{font-size:13px;padding:13px 10px;min-height:50px;gap:10px}
 .torino-highlights{margin-top:0!important}
 .torino-highlights-grid{padding:26px 0;row-gap:28px}
 .torino-highlight{padding-inline:10px}
 .torino-highlight h2{font-size:12px;line-height:1.6}
 .torino-highlight p{font-size:11px}
 .torino-welcome{padding-block:68px 38px}
 .torino-welcome .torino-eyebrow{font-size:10px}
 .torino-main .torino-page-title{font-size:clamp(32px,9.3vw,46px);line-height:1.18;letter-spacing:-.055em;overflow-wrap:normal}
 .torino-page-heading{padding-block:46px 42px}
 .torino-page-heading:after{margin-top:23px;width:42px}
 .torino-main :is(.torino-section-title,.torino-section .torino-section-title,.torino-final-cta .torino-section-title){font-size:clamp(28px,7.6vw,38px);line-height:1.26;letter-spacing:-.05em;margin-bottom:28px}
 .torino-main :is(.torino-card-title,.torino-about-title,.torino-contact-title){font-size:20px;line-height:1.4}
 .torino-main .torino-section>.torino-section-title{margin-bottom:30px}
 .torino-reading-copy p,.torino-welcome-copy p,.torino-about-card p,.torino-about-card li,.torino-benefits .torino-benefit p,.torino-wedding .torino-offer-card p,.torino-included :is(ul,.torino-price-note),.torino-addons .torino-addon p:not(.torino-service-price),.torino-faq .torino-faq-item p,.torino-events .torino-reading-copy p,.torino-technical :is(p,ul),.torino-contact-card p:not(.torino-contact-number){font-size:15px;line-height:1.8}
 .torino-about-content .torino-about-intro-card p{font-size:15px;line-height:1.85}
 .torino-main .torino-welcome-copy p.torino-welcome-lead{font-size:22px;line-height:1.6}
 .torino-section{padding-block:48px}
 .torino-benefit,.torino-addon{padding:26px 24px}
 .torino-contact-card{padding:28px 22px}
 .torino-contact-grid{gap:24px}
 .torino-contact-number{font-size:27px}
 .torino-final-cta{padding:32px 24px;margin-block:20px 26px!important}
 .torino-lightbox{width:100vw;max-width:100vw;height:min(760px,94dvh);max-height:94dvh;padding:62px 12px 72px;border-radius:16px}
 .torino-lightbox .variant-photo-prev{top:auto;bottom:12px;left:16px}
 .torino-lightbox .variant-photo-next{top:auto;bottom:12px;right:16px}
 .torino-lightbox .variant-photo-count{bottom:22px}
 .torino-about-stack.is-enhanced [data-position="1"]{transform:translate(5px,8px) rotate(2deg)}
 .torino-about-stack.is-enhanced [data-position="2"]{transform:translate(-5px,13px) rotate(-2deg)}
 .torino-faq-item summary,.torino-faq .torino-faq-item summary{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{animation:none!important;transition:none!important}
 .torino-video:hover,.torino-gallery-section .torino-gallery .wp-block-image:hover,.wp-block-button__link:hover,.torino-nav-cta a:hover{transform:none!important}
}

/* The opening quote follows the same paragraph rhythm at every breakpoint. */
.torino-welcome-copy{padding-top:0;max-width:62ch;align-self:start}
.torino-main .torino-welcome-copy p{margin:0 0 24px}
.torino-main .torino-welcome-copy p.torino-welcome-lead{line-height:1.5;margin:0 0 24px;max-width:36ch}
.torino-main .torino-welcome-copy>.wp-block-buttons{margin:4px 0 0}
/* About keeps its reading measure; surfaces share the Offer declaration above. */
.torino-about-content{gap:28px}
.torino-about-content .torino-about-card:not(.torino-about-intro-card){padding:clamp(28px,4vw,56px)}
.torino-about-card .torino-about-title{margin:0 0 24px;line-height:1.4;font-weight:500}
.torino-about-card p,.torino-about-card ul{max-width:82ch}
.torino-about-repertoire li+li{margin-top:16px}
.torino-about-card .torino-about-roster{margin-bottom:32px}
/* One inherited phase moves a restrained reflection around social borders. */
@property --variant-social-angle{syntax:"<angle>";inherits:true;initial-value:0deg}
@keyframes variant-social-reflection{to{--variant-social-angle:360deg}}
@supports (background:conic-gradient(from 0deg,transparent,white)) and ((mask-composite:exclude) or (-webkit-mask-composite:xor)){
 .torino-about-social{animation:variant-social-reflection 14s linear infinite}
 .torino-about-social .wp-block-button{border-radius:7px}
 .torino-about-social .wp-block-button:before{content:"";position:absolute;inset:0;z-index:1;box-sizing:border-box;padding:1px;border:0;border-radius:inherit;pointer-events:none;opacity:.8;filter:none;box-shadow:none;background:conic-gradient(from var(--variant-social-angle),#c6aa7600 0deg 235deg,#c6aa7618 267deg,#d8bf8c80 300deg,#c6aa7618 333deg,#c6aa7600 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
 .torino-about-social .wp-block-button:after{content:none}
}
.torino-about-social .wp-block-button .wp-block-button__link:is(:hover,:focus-visible){transform:none;box-shadow:none}
@media(min-width:600px) and (max-width:999px){.torino-main .torino-hero-title{font-size:clamp(70px,10vw,98px)}}
@media(max-width:599px){
 .torino-main .torino-welcome-copy p{margin-bottom:22px}
 .torino-main .torino-welcome-copy p.torino-welcome-lead{margin-bottom:22px}
 .torino-welcome{gap:0}
 .torino-about-content{gap:22px}
 .torino-about-content .torino-about-card:not(.torino-about-intro-card){padding:28px 24px}
 .torino-about-card .torino-about-title{margin-bottom:22px}
}
@media(prefers-reduced-motion:reduce){.torino-about-social{animation:none}.torino-about-social .wp-block-button:before{display:none}}

/* Shared footer: existing contact, real logo and existing social destinations. */
.torino-footer-top{justify-content:center}
.torino-footer-nav .wp-block-navigation__container{justify-content:center;max-width:none}
.torino-footer-bottom{--torino-footer-logo-size:88px;display:grid;grid-template-columns:var(--torino-footer-logo-size) minmax(0,1fr) auto;align-items:center;gap:24px}
.torino-footer-phone{grid-column:2;grid-row:1;justify-self:end;white-space:nowrap}
.torino-footer-phone a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.torino-footer-bottom .wp-block-site-logo{grid-column:1;grid-row:1;justify-self:start;margin:0;line-height:0}
.torino-footer-bottom .wp-block-site-logo a{display:grid;place-items:center;min-width:44px;width:var(--torino-footer-logo-size);max-width:100%;min-height:44px}
.torino-footer-bottom .wp-block-site-logo img{display:block;width:var(--torino-footer-logo-size);height:auto}
.torino-footer-social{grid-column:3;grid-row:1;display:flex;justify-content:flex-end;justify-self:end;flex-wrap:wrap;gap:8px;margin:0}
.torino-footer-social .wp-block-button{margin:0;flex:0 0 44px}
.torino-footer-social .wp-block-button__link{display:grid;place-items:center;width:44px;min-height:44px;padding:10px;border:1px solid #c6aa7633;background:transparent;border-radius:7px}
.torino-footer-social img{display:block;width:20px;height:20px;margin:0}
.torino-final-cta .torino-cta-copy{min-width:0}
.torino-main .torino-final-cta .torino-section-title{margin-bottom:18px}
@media(max-width:599px){
 .torino-footer-top{align-items:center}
 .torino-footer-nav .wp-block-navigation__container{justify-content:center;gap:10px 20px}
 .torino-footer-bottom{grid-template-columns:var(--torino-footer-logo-size) minmax(0,1fr);gap:12px}
 .torino-footer-bottom .torino-footer-social{grid-column:2;grid-row:2;display:flex;flex-wrap:nowrap;justify-self:end;justify-content:flex-end;gap:8px}
 .torino-footer-bottom .wp-block-site-logo{grid-row:1/3;justify-self:start}
 .torino-final-cta .wp-block-buttons{margin-top:24px}
}

/* Keep four full-size touch targets on the narrowest phone layouts too. */
@media(max-width:359px){.torino-footer-bottom{--torino-footer-logo-size:72px;column-gap:8px}.torino-footer-bottom .torino-footer-social{gap:4px}}
