.elementor-kit-6{--e-global-color-primary:#C9A47E;--e-global-color-secondary:#E7CDA9;--e-global-color-text:#C7B9B0;--e-global-color-accent:#5B1B2B;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:500;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-font-style:italic;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ==== SMR · Silvia Massaggi Roma · design system (velluto prugna · oro rosa) ====
   Palette/font/bottoni base: Aspetto > Personalizza (Astra). Qui solo componenti.
   0 oro rosa · 1 oro chiaro · 2 avorio (titoli) · 3 testo · 4 sfondo · 5 superficie · 6 superficie 2 · 7 bordeaux · 8 muted */
:root{--smr-gold:var(--ast-global-color-0);--smr-gold-2:var(--ast-global-color-1);--smr-ivory:var(--ast-global-color-2);--smr-text:var(--ast-global-color-3);--smr-bg:var(--ast-global-color-4);--smr-surface:var(--ast-global-color-5);--smr-surface-2:var(--ast-global-color-6);--smr-wine:var(--ast-global-color-7);--smr-muted:var(--ast-global-color-8);--smr-line:rgba(214,164,127,.2);--smr-line-2:rgba(214,164,127,.45);--smr-serif:"Cormorant Garamond",Georgia,serif;--smr-sans:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;--smr-ease:cubic-bezier(.2,.7,.2,1);--smr-pad:clamp(84px,11vw,170px);--smr-gutter:clamp(20px,4.5vw,56px);--smr-foil:linear-gradient(100deg,#F6D6BA 0%,#D6A47F 28%,#B47A5A 52%,#EDC3A0 76%,#D6A47F 100%);--smr-ring:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400'%3E%3Cg fill='none' stroke='%23D6A47F' stroke-width='.7'%3E%3Ccircle cx='200' cy='200' r='197' stroke-opacity='.5'/%3E%3Cpath d='M6 262 C 80 214 150 318 228 270 S 348 196 396 236' stroke-opacity='.7'/%3E%3C/g%3E%3C/svg%3E")}
body{background:var(--smr-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body::after{content:"";position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
::selection{background:var(--smr-gold);color:var(--smr-bg)}
:focus-visible{outline:1px solid var(--smr-gold);outline-offset:4px}
/* ---------- tipografia ---------- */
.elementor-heading-title{color:var(--smr-ivory);text-wrap:balance}
.elementor-widget-text-editor p{text-wrap:pretty}
.elementor-widget-heading h1.elementor-heading-title{line-height:1.02;letter-spacing:-.015em}
.elementor-widget-heading h2.elementor-heading-title{line-height:1.06;letter-spacing:-.01em}
.elementor-widget-heading h3.elementor-heading-title{line-height:1.18}
.elementor-heading-title em{font-style:italic;font-weight:400;color:var(--smr-gold);background:var(--smr-foil);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;padding-right:.08em;margin-right:-.04em}
.smr-shimmer .elementor-heading-title em{animation:smrShimmer 10s ease-in-out infinite}
@keyframes smrShimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.smr-display h2.elementor-heading-title{font-size:clamp(42px,5.4vw,84px)}
.smr-statement .elementor-heading-title{font-size:clamp(32px,4.2vw,64px);font-weight:400;line-height:1.16}
.elementor-widget-text-editor strong{font-weight:500;color:var(--smr-ivory)}
.smr-lead,.smr-lead p{font-size:clamp(18px,1.45vw,21px);line-height:1.7;color:rgba(245,235,226,.86)}
.smr-small,.smr-small p{font-size:14px;letter-spacing:.02em;color:var(--smr-muted)}
.smr-foil .elementor-heading-title,.smr-num .elementor-heading-title,.smr-tprice .elementor-heading-title,.smr-signature .elementor-heading-title{background:var(--smr-foil);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
/* ---------- sezioni ---------- */
.e-con.smr-np{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px}
.e-con.smr-section{--padding-top:var(--smr-pad);--padding-bottom:var(--smr-pad);--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter);position:relative;isolation:isolate;overflow:clip}
.e-con.smr-section-tight{--padding-top:clamp(56px,7vw,100px);--padding-bottom:clamp(56px,7vw,100px)}
.smr-bg-surface{background:var(--smr-surface)}
.smr-bg-wine{background:radial-gradient(80% 110% at 0% 0%,rgba(110,26,58,.85) 0%,rgba(110,26,58,0) 62%),radial-gradient(60% 90% at 100% 100%,rgba(110,26,58,.5) 0%,rgba(110,26,58,0) 60%),#1a0a12}
.smr-bg-velvet{background:radial-gradient(120% 80% at 50% -10%,rgba(140,40,78,.55) 0%,rgba(22,9,16,0) 55%),repeating-linear-gradient(115deg,rgba(255,255,255,.012) 0 2px,rgba(0,0,0,.02) 2px 5px),linear-gradient(180deg,#3a0f22 0%,#240a16 100%)}
.smr-bg-glow{background:radial-gradient(60% 110% at 50% 115%,rgba(214,164,127,.22) 0%,rgba(22,9,16,0) 60%),radial-gradient(55% 80% at 0% 0%,rgba(110,26,58,.6) 0%,rgba(22,9,16,0) 60%),var(--smr-bg)}
.smr-rule-top{border-top:1px solid var(--smr-line)}
.e-con.smr-narrow{max-width:800px}
.e-con.smr-center{text-align:center;margin-inline:auto;align-items:center}
.e-con.smr-head{margin-bottom:clamp(44px,6vw,84px)}
.e-con.smr-stack{gap:22px}
/* ---------- parole fantasma (solo CSS, non indicizzate) ---------- */
.e-con.smr-ghost::before{position:absolute;z-index:-1;pointer-events:none;display:block;width:auto;height:auto;background:none;opacity:1;mix-blend-mode:normal;border:0;border-radius:0;font-family:var(--smr-serif);font-style:italic;font-weight:400;font-size:clamp(130px,23vw,400px);line-height:.8;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(214,164,127,.13);top:.12em;bottom:auto;right:-.04em;left:auto}
.e-con.smr-ghost.smr-ghost-l::before{right:auto;left:-.04em}
.e-con.smr-ghost.smr-ghost-b::before{top:auto;bottom:-.1em}
.e-con.smr-ghost-silvia::before{content:"Silvia"}
.e-con.smr-ghost-tantra::before{content:"Tantra"}
.e-con.smr-ghost-roma::before{content:"Roma"}
.e-con.smr-ghost-rituali::before{content:"Rituali"}
.e-con.smr-ghost-gallery::before{content:"Atmosfera"}
.e-con.smr-ghost-contatti::before{content:"Contatti"}
.e-con.smr-ghost-tratt::before{content:"Rituali"}
/* ---------- eyebrow ---------- */
.smr-eyebrow .elementor-heading-title{font-family:var(--smr-sans);font-size:12px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;line-height:1.5;color:var(--smr-gold);display:inline-flex;align-items:center;gap:14px;text-wrap:nowrap}
.smr-eyebrow .elementor-heading-title::before{content:"";width:34px;height:1px;background:currentColor;opacity:.7;flex:none}
.smr-center .smr-eyebrow .elementor-heading-title::after{content:"";width:34px;height:1px;background:currentColor;opacity:.7;flex:none}
/* ---------- bottoni ---------- */
.elementor-button{transition:background .45s var(--smr-ease),color .45s var(--smr-ease),box-shadow .45s var(--smr-ease),transform .45s var(--smr-ease)}
.elementor-button .elementor-button-content-wrapper{gap:10px;align-items:center}
.elementor-button .elementor-button-icon svg{width:1.3em;height:1.3em;fill:currentColor}
.smr-btn-gold .elementor-button{background:var(--smr-foil);background-size:200% 100%;background-position:0 50%;color:var(--smr-bg);box-shadow:0 18px 44px -20px rgba(214,164,127,.8)}
.smr-btn-gold .elementor-button:hover,.smr-btn-gold .elementor-button:focus{background-position:100% 50%;color:var(--smr-bg);transform:translateY(-2px);box-shadow:0 24px 54px -18px rgba(214,164,127,.9)}
.smr-btn-ghost .elementor-button{background:transparent;color:var(--smr-ivory);box-shadow:inset 0 0 0 1px var(--smr-line-2)}
.smr-btn-ghost .elementor-button:hover,.smr-btn-ghost .elementor-button:focus{background:var(--smr-ivory);color:var(--smr-bg);box-shadow:inset 0 0 0 1px var(--smr-ivory)}
.smr-link .elementor-button{background:none!important;padding:0 0 8px!important;color:var(--smr-gold)!important;box-shadow:inset 0 -1px 0 var(--smr-line-2)!important;border-radius:0;letter-spacing:.24em}
.smr-link .elementor-button:hover{box-shadow:inset 0 -1px 0 var(--smr-gold)!important;color:var(--smr-ivory)!important}
.e-con.smr-btns{gap:14px}
/* ---------- hero home ---------- */
.e-con.smr-hero{position:relative;overflow:hidden;background:var(--smr-bg);min-height:min(100svh,980px);justify-content:center;--padding-top:clamp(130px,18vh,200px);--padding-bottom:clamp(80px,12vh,140px);--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter)}
.smr-hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(22,9,16,.95) 0%,rgba(22,9,16,.7) 38%,rgba(22,9,16,.08) 75%),linear-gradient(0deg,rgba(22,9,16,1) 0%,rgba(22,9,16,0) 38%),radial-gradient(60% 70% at 12% 100%,rgba(110,26,58,.6) 0%,rgba(110,26,58,0) 70%)}
.elementor-element.smr-hero-media{position:absolute;inset:0;z-index:0;margin:0;width:100%;max-width:none;height:100%}
.smr-hero-media img{width:100%;height:100%;object-fit:cover;object-position:70% 40%;animation:smrZoom 20s var(--smr-ease) both}
@keyframes smrZoom{from{transform:scale(1.1)}to{transform:scale(1)}}
.e-con.smr-hero-content{position:relative;z-index:2;max-width:1240px;margin-inline:auto;width:100%}
.e-con.smr-hero-text{max-width:820px}
.smr-hero h1.elementor-heading-title{font-size:clamp(48px,7vw,112px)}
.smr-hero h1.elementor-heading-title em{display:inline-block}
.smr-hero .elementor-widget-text-editor{color:rgba(245,235,226,.82);max-width:620px}
.smr-trust .elementor-icon-list-items{gap:10px 30px}
.smr-trust .elementor-icon-list-text{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:rgba(245,235,226,.68)}
.smr-trust .elementor-icon-list-icon svg{fill:var(--smr-gold);width:14px;height:14px}
.smr-hero-light{position:absolute;inset:0;z-index:1;pointer-events:none;background:repeating-linear-gradient(100deg,rgba(255,214,170,0) 0 70px,rgba(255,214,170,.05) 70px 110px,rgba(255,214,170,0) 110px 190px);mask-image:linear-gradient(90deg,transparent 35%,#000 70%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent 35%,#000 70%,transparent);animation:smrLight 14s ease-in-out infinite alternate}
@keyframes smrLight{from{transform:translateX(-4%)}to{transform:translateX(4%)}}
.elementor-element.smr-seal-wrap{position:absolute;right:var(--smr-gutter);bottom:clamp(70px,11vh,130px);z-index:3;width:156px}
.smr-seal{position:relative;width:156px;height:156px}
.smr-seal svg{width:100%;height:100%;animation:smrSpin 32s linear infinite;overflow:visible}
.smr-seal text{font-family:var(--smr-sans);font-size:12.6px;letter-spacing:.34em;text-transform:uppercase;fill:var(--smr-gold-2)}
.smr-seal .smr-seal-c{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--smr-serif);font-style:italic;font-size:42px;color:var(--smr-gold);line-height:1}
.smr-seal::before{content:"";position:absolute;inset:28px;border:1px solid var(--smr-line-2);border-radius:50%}
@keyframes smrSpin{to{transform:rotate(360deg)}}
.smr-scrollcue{position:absolute;left:50%;bottom:28px;z-index:3;width:1px;height:64px;background:linear-gradient(var(--smr-gold),transparent);transform-origin:top;animation:smrCue 2.6s var(--smr-ease) infinite}
@keyframes smrCue{0%{transform:scaleY(0);opacity:1}60%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
.elementor-element.smr-light-wrap{position:absolute;inset:0;z-index:1;margin:0;width:100%;max-width:none;height:100%;pointer-events:none}
.elementor-element.smr-cue-wrap{position:absolute;left:50%;bottom:0;width:1px;height:96px;z-index:3;margin:0}
.smr-cue-wrap .smr-scrollcue{bottom:20px;left:0}
.e-con.smr-arch-wrap{position:relative;overflow:visible}
.smr-arch-wrap .elementor-element.smr-seal-wrap{right:-34px;bottom:56px;left:auto;top:auto}
.smr-arch-wrap .smr-seal{background:radial-gradient(circle,var(--smr-bg) 0 58%,transparent 59%)}
@media (max-width:1024px){.smr-arch-wrap .elementor-element.smr-seal-wrap{right:max(0px,calc(50% - 290px))}}
/* ---------- hero pagine interne ---------- */
.e-con.smr-pagehero{position:relative;overflow:clip;isolation:isolate;background:radial-gradient(70% 100% at 85% 0%,rgba(110,26,58,.75) 0%,rgba(22,9,16,0) 62%),radial-gradient(40% 60% at 0% 100%,rgba(214,164,127,.1) 0%,rgba(22,9,16,0) 70%),var(--smr-bg);--padding-top:clamp(150px,20vh,220px);--padding-bottom:clamp(70px,9vw,130px);--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter);border-bottom:1px solid var(--smr-line)}
.smr-pagehero h1.elementor-heading-title{font-size:clamp(46px,6.2vw,96px)}
.e-con.smr-pagehero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(40px,6vw,100px);align-items:center}
.smr-crumb .elementor-heading-title{font-family:var(--smr-sans);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--smr-muted)}
.smr-crumb .elementor-heading-title a{color:var(--smr-muted)}
.smr-crumb .elementor-heading-title a:hover{color:var(--smr-gold)}
/* ---------- immagini ---------- */
.elementor-element.smr-arch{position:relative;padding:16px}
.smr-arch::before{content:"";position:absolute;inset:0;border:1px solid var(--smr-line-2);border-radius:999px 999px 4px 4px;pointer-events:none;z-index:1}
.smr-arch img{position:relative;z-index:1;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:999px 999px 2px 2px}
.elementor-element.smr-ring{position:relative}
.smr-ring::after{content:"";position:absolute;z-index:0;left:50%;top:50%;width:132%;aspect-ratio:1;transform:translate(-50%,-50%);background:var(--smr-ring) center/contain no-repeat;pointer-events:none}
.smr-img-wide img{width:100%;aspect-ratio:16/10;object-fit:cover}
.smr-img-tall img{width:100%;aspect-ratio:3/4;object-fit:cover}
.smr-signature .elementor-heading-title{font-family:var(--smr-serif);font-style:italic;font-weight:400;font-size:46px;line-height:1}
/* ---------- griglie ---------- */
.e-con.smr-grid-2,.e-con.smr-grid-3,.e-con.smr-grid-4{display:grid;gap:clamp(18px,2.4vw,32px)}
.e-con.smr-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.e-con.smr-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.e-con.smr-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.e-con.smr-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(44px,7vw,120px);align-items:center}
.e-con.smr-split.smr-split-rev{grid-template-columns:minmax(0,6fr) minmax(0,5fr)}
.e-con.smr-split.smr-split-top{align-items:start}
/* ---------- marquee ---------- */
.e-con.smr-marquee{overflow:hidden;border-block:1px solid var(--smr-line);--padding-top:24px;--padding-bottom:24px;background:var(--smr-bg)}
.smr-marquee .elementor-heading-title{white-space:nowrap;display:inline-block;font-family:var(--smr-serif);font-style:italic;font-weight:400;font-size:clamp(26px,3.2vw,44px);line-height:1;color:rgba(245,235,226,.9);animation:smrMarq 52s linear infinite;will-change:transform;text-wrap:nowrap}
.smr-marquee .elementor-heading-title span{color:var(--smr-gold);font-style:normal;font-size:.45em;vertical-align:middle;margin:0 1em}
@keyframes smrMarq{to{transform:translateX(-50%)}}
/* ---------- pilastri ---------- */
.e-con.smr-pillar{border-top:1px solid var(--smr-line-2);--padding-top:30px;gap:12px}
.smr-num .elementor-heading-title{font-family:var(--smr-serif);font-style:italic;font-weight:400;font-size:56px;line-height:1}
.e-con.smr-pillars-v{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.e-con.smr-pillars-v>.e-con{border-top:0;border-left:1px solid var(--smr-line);--padding-top:8px;--padding-left:clamp(20px,3vw,44px);--padding-right:clamp(20px,3vw,44px)}
.e-con.smr-pillars-v>.e-con:first-child{border-left:0;--padding-left:0px}
/* ---------- menù dei rituali ---------- */
.e-con.smr-menu{border-top:1px solid var(--smr-line-2);gap:0}
.e-con.smr-mrow{display:grid;grid-template-columns:64px minmax(0,1fr) 170px 150px 28px;align-items:center;gap:28px;border-bottom:1px solid var(--smr-line);--padding-top:34px;--padding-bottom:34px;--padding-left:14px;--padding-right:14px;position:relative;color:inherit;transition:background .6s var(--smr-ease)}
.e-con.smr-mrow:hover{background:linear-gradient(90deg,rgba(214,164,127,.09),rgba(214,164,127,0) 75%)}
.smr-mnum .elementor-heading-title{font-family:var(--smr-serif);font-style:italic;font-size:24px;color:var(--smr-gold)}
.smr-mrow h3.elementor-heading-title{font-size:clamp(28px,3vw,46px);transition:transform .6s var(--smr-ease),color .4s}
.smr-mrow:hover h3.elementor-heading-title{transform:translateX(12px)}
.e-con.smr-mmain{gap:8px}
.smr-mrow .elementor-widget-text-editor{font-size:15px;color:var(--smr-text);max-width:500px}
.smr-mrow .smr-tprice{text-align:right}
.elementor-element.smr-mimg{position:absolute;right:260px;top:50%;width:200px;margin:0;transform:translateY(-50%) rotate(-5deg) scale(.88);opacity:0;pointer-events:none;transition:opacity .5s var(--smr-ease),transform .8s var(--smr-ease);z-index:2}
.smr-mimg img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:999px 999px 2px 2px;box-shadow:0 40px 70px -24px rgba(0,0,0,.85);outline:1px solid var(--smr-line-2);outline-offset:8px}
.smr-mrow:hover .smr-mimg{opacity:1;transform:translateY(-50%) rotate(-2deg) scale(1)}
.smr-marrow .elementor-icon svg{fill:var(--smr-gold);width:18px;height:18px;transition:transform .5s var(--smr-ease)}
.smr-mrow:hover .smr-marrow .elementor-icon svg{transform:translateX(6px)}
.smr-badge .elementor-heading-title{display:inline-block;font-family:var(--smr-sans);font-size:10.5px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--smr-bg);background:var(--smr-foil);padding:7px 12px;line-height:1}
.smr-tdur .elementor-heading-title{font-family:var(--smr-sans);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--smr-muted);line-height:1.4}
.smr-tprice .elementor-heading-title{font-family:var(--smr-serif);font-size:32px;font-weight:500;line-height:1}
/* ---------- trattamenti (pagina) ---------- */
.e-con.smr-treats{gap:clamp(28px,4vw,56px)}
.e-con.smr-treat{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:0;background:var(--smr-surface);border:1px solid var(--smr-line);scroll-margin-top:110px;overflow:hidden;position:relative}
.e-con.smr-treat.smr-treat-rev{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.smr-treat-rev>.elementor-widget-image{order:2}
.smr-treat>.elementor-widget-image{position:relative;overflow:hidden;margin:0}
.smr-treat>.elementor-widget-image img{width:100%;height:100%;min-height:460px;object-fit:cover;transition:transform 1.6s var(--smr-ease)}
.smr-treat:hover>.elementor-widget-image img{transform:scale(1.04)}
.e-con.smr-treat-body{--padding-top:clamp(36px,5vw,76px);--padding-bottom:clamp(36px,5vw,76px);--padding-left:clamp(24px,5vw,76px);--padding-right:clamp(24px,5vw,76px);gap:18px;justify-content:center;position:relative}
.smr-treat-body::before{content:attr(data-n);position:absolute}
.smr-tbig .elementor-heading-title{position:absolute;top:clamp(10px,2vw,24px);right:clamp(18px,3vw,40px);font-family:var(--smr-serif);font-style:italic;font-size:clamp(80px,9vw,150px);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(214,164,127,.2);pointer-events:none}
.e-con.smr-prices{gap:0;border-top:1px solid var(--smr-line)}
.e-con.smr-price-row{display:flex;flex-direction:row;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--smr-line);--padding-top:14px;--padding-bottom:14px}
.smr-anchors .elementor-button{font-size:11px}
/* ---------- feature ---------- */
.e-con.smr-feature-wrap{border:1px solid var(--smr-line);background:rgba(22,9,16,.35);--padding-top:36px;--padding-bottom:36px;--padding-left:32px;--padding-right:32px;transition:border-color .5s,background .5s,transform .6s var(--smr-ease)}
.e-con.smr-feature-wrap:hover{border-color:var(--smr-line-2);background:rgba(22,9,16,.6);transform:translateY(-4px)}
.smr-feature .elementor-icon svg{fill:var(--smr-gold);width:28px;height:28px}
.smr-feature .elementor-icon-box-title{font-family:var(--smr-serif);font-size:27px;font-weight:500;margin:6px 0 8px;color:var(--smr-ivory)}
.smr-feature .elementor-icon-box-description{font-size:15px;line-height:1.7;color:var(--smr-text)}
/* ---------- timeline passi ---------- */
.e-con.smr-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,60px);position:relative}
.e-con.smr-steps::before{content:"";position:absolute;left:0;right:0;top:34px;height:1px;background:linear-gradient(90deg,transparent,var(--smr-line-2) 12%,var(--smr-line-2) 88%,transparent)}
.e-con.smr-step{gap:14px;align-items:center;text-align:center}
.smr-node .elementor-heading-title{width:68px;height:68px;border-radius:50%;border:1px solid var(--smr-line-2);display:grid;place-items:center;background:var(--smr-surface);font-family:var(--smr-serif);font-style:italic;font-size:30px;color:var(--smr-gold);line-height:1;margin-inline:auto;box-shadow:0 0 0 8px var(--smr-surface)}
/* ---------- banda zona ---------- */
.e-con.smr-band{position:relative;overflow:hidden;isolation:isolate;min-height:min(90vh,800px);justify-content:center;--padding-top:var(--smr-pad);--padding-bottom:var(--smr-pad);--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter)}
.elementor-element.smr-band-media{position:absolute;inset:0;z-index:-2;margin:0;width:100%;max-width:none;height:100%}
.smr-band-media img{width:100%;height:100%;object-fit:cover}
.smr-band::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(22,9,16,.2) 0%,rgba(22,9,16,.82) 70%),linear-gradient(0deg,rgba(22,9,16,.6),transparent 40%)}
.e-con.smr-band-inner{max-width:1240px;margin-inline:auto;width:100%;align-items:flex-end}
.e-con.smr-glass{background:rgba(30,11,21,.5);-webkit-backdrop-filter:blur(20px) saturate(1.2);backdrop-filter:blur(20px) saturate(1.2);border:1px solid var(--smr-line-2);max-width:580px;width:100%;--padding-top:clamp(34px,4.5vw,60px);--padding-bottom:clamp(34px,4.5vw,60px);--padding-left:clamp(26px,4.5vw,60px);--padding-right:clamp(26px,4.5vw,60px);gap:20px}
/* ---------- liste info ---------- */
.smr-info .elementor-icon-list-item{padding:15px 0!important;border-bottom:1px solid var(--smr-line)}
.smr-info .elementor-icon-list-items{border-top:1px solid var(--smr-line)}
.smr-info .elementor-icon-list-icon svg{fill:var(--smr-gold);width:17px;height:17px}
.smr-info .elementor-icon-list-text{font-size:16px;color:var(--smr-ivory)}
/* ---------- faq ---------- */
.smr-faq .elementor-toggle-item{border-bottom:1px solid var(--smr-line)}
.smr-faq .elementor-toggle-item:first-child{border-top:1px solid var(--smr-line)}
.smr-faq .elementor-toggle .elementor-tab-title{border:0;padding:28px 0;font-family:var(--smr-serif);font-size:clamp(21px,2vw,27px);font-weight:500;line-height:1.25;color:var(--smr-ivory);display:flex;align-items:center;justify-content:space-between;gap:24px;transition:color .3s}
.smr-faq .elementor-toggle .elementor-tab-title:hover,.smr-faq .elementor-toggle .elementor-tab-title.elementor-active{color:var(--smr-gold)}
.smr-faq .elementor-toggle .elementor-tab-title a{color:inherit}
.smr-faq .elementor-toggle .elementor-toggle-icon{order:2;width:auto;flex:none}
.smr-faq .elementor-toggle .elementor-toggle-icon svg{fill:var(--smr-gold);width:13px}
.smr-faq .elementor-toggle .elementor-tab-content{border:0;padding:0 0 30px;font-size:16px;color:var(--smr-text);max-width:820px}
/* ---------- cta ---------- */
.e-con.smr-cta-ring{position:relative}
.e-con.smr-cta-ring::before{content:"";position:absolute;left:50%;top:50%;width:min(720px,120vw);aspect-ratio:1;transform:translate(-50%,-50%);background:var(--smr-ring) center/contain no-repeat;pointer-events:none;z-index:-1;opacity:.8}
/* ---------- contatti ---------- */
.e-con.smr-contact-card{background:var(--smr-surface);border:1px solid var(--smr-line);--padding-top:clamp(34px,4vw,60px);--padding-bottom:clamp(34px,4vw,60px);--padding-left:clamp(26px,4vw,56px);--padding-right:clamp(26px,4vw,56px);gap:16px;transition:transform .6s var(--smr-ease),border-color .6s,box-shadow .6s;position:relative;overflow:hidden}
.e-con.smr-contact-card:hover{transform:translateY(-4px);border-color:var(--smr-line-2);box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.e-con.smr-contact-card.smr-contact-hl{background:radial-gradient(90% 90% at 100% 0%,rgba(110,26,58,.8) 0%,rgba(32,13,22,0) 70%),var(--smr-surface);border-color:var(--smr-line-2)}
.smr-bignum .elementor-heading-title{font-family:var(--smr-serif);font-size:clamp(32px,3.4vw,48px);font-weight:500;letter-spacing:.01em}
.smr-bignum .elementor-heading-title a{color:var(--smr-ivory)}
.smr-bignum .elementor-heading-title a:hover{color:var(--smr-gold)}
.smr-ico .elementor-icon svg{width:34px;height:34px;fill:var(--smr-gold)}
.smr-note{border-left:1px solid var(--smr-gold);padding-left:20px}
/* ---------- gallery ---------- */
.smr-gallery .e-gallery-item{overflow:hidden}
.smr-gallery .e-gallery-image{filter:saturate(.9) brightness(.9);transition:transform 1.4s var(--smr-ease),filter .6s}
.smr-gallery .e-gallery-item:hover .e-gallery-image{transform:scale(1.05);filter:saturate(1.05) brightness(1)}
/* ---------- reveal allo scroll (solo CSS, progressive enhancement) ---------- */
@keyframes smrUp{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes smrClip{from{clip-path:inset(14% 10% 14% 10%);transform:scale(1.12)}to{clip-path:inset(0 0 0 0);transform:scale(1)}}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
 .smr-reveal{animation:smrUp linear both;animation-timeline:view();animation-range:entry 0% cover 26%}
 .smr-reveal-img img{animation:smrClip linear both;animation-timeline:view();animation-range:entry 0% cover 42%}
}}
/* ---------- responsive ---------- */
@media (max-width:1024px){
 .e-con.smr-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
 .e-con.smr-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
 .e-con.smr-split,.e-con.smr-split.smr-split-rev{grid-template-columns:1fr}
 .e-con.smr-treat,.e-con.smr-treat.smr-treat-rev{grid-template-columns:1fr}
 .smr-treat-rev>.elementor-widget-image{order:0}
 .smr-treat>.elementor-widget-image img{min-height:0;aspect-ratio:16/10;height:auto}
 .elementor-element.smr-arch{max-width:460px;margin-inline:auto;width:100%}
 .e-con.smr-pagehero-grid{grid-template-columns:1fr}
 .smr-pagehero .smr-arch{max-width:340px;margin-inline:0}
 .elementor-element.smr-mimg{display:none}
 .e-con.smr-mrow{grid-template-columns:48px minmax(0,1fr) 130px 120px;gap:20px}
 .smr-marrow{display:none}
 .elementor-element.smr-seal-wrap{width:120px;right:24px}
 .smr-seal{width:120px;height:120px}
 .e-con.smr-pillars-v{grid-template-columns:1fr;gap:28px}
 .e-con.smr-pillars-v>.e-con{border-left:0;border-top:1px solid var(--smr-line);--padding-left:0px;--padding-right:0px;--padding-top:24px}
 .e-con.smr-pillars-v>.e-con:first-child{border-top:0;--padding-top:0px}
}
@media (max-width:767px){
 .e-con.smr-grid-2,.e-con.smr-grid-3,.e-con.smr-grid-4{grid-template-columns:1fr}
 .e-con.smr-hero{justify-content:flex-end;min-height:100svh}
 .smr-hero::after{background:linear-gradient(0deg,rgba(22,9,16,1) 0%,rgba(22,9,16,.8) 50%,rgba(22,9,16,.3) 100%)}
 .smr-hero-media img{object-position:76% 30%}
 .elementor-element.smr-seal-wrap{display:none}
 .smr-scrollcue{display:none}
 .smr-btns .elementor-widget-button,.smr-btns .elementor-button{width:100%}
 .smr-btns .elementor-button .elementor-button-content-wrapper{justify-content:center}
 .e-con.smr-mrow{grid-template-columns:36px minmax(0,1fr) auto;gap:6px 14px;--padding-top:26px;--padding-bottom:26px;--padding-left:0px;--padding-right:0px}
 .e-con.smr-mrow{align-items:start}
 .e-con.smr-mrow>.smr-mnum{padding-top:8px}
 .e-con.smr-mrow>.smr-mmain{grid-column:2/4}
 .e-con.smr-mrow>.smr-tdur{grid-column:2}
 .e-con.smr-mrow>.smr-tprice{grid-column:3}
 .smr-mrow .smr-tprice .elementor-heading-title{font-size:26px}
 .e-con.smr-steps{grid-template-columns:1fr;gap:36px}
 .e-con.smr-steps::before{left:34px;right:auto;top:0;bottom:0;width:1px;height:auto;background:linear-gradient(180deg,transparent,var(--smr-line-2) 10%,var(--smr-line-2) 90%,transparent)}
 .e-con.smr-step{display:grid;grid-template-columns:68px 1fr;text-align:left;align-items:start;gap:4px 20px}
 .e-con.smr-step>.smr-node{grid-row:1/3}
 .e-con.smr-band{min-height:0}
 .e-con.smr-band-inner{align-items:stretch}
 .e-con.smr-ghost::before{font-size:clamp(110px,38vw,200px)}
 .smr-treat>.elementor-widget-image img{aspect-ratio:4/3}
 .smr-eyebrow .elementor-heading-title{letter-spacing:.26em}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* ===== header ===== */
.elementor-location-header{position:fixed;top:0;left:0;right:0;z-index:999}
.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){.admin-bar .elementor-location-header{top:46px}}
.e-con.smr-header{background:linear-gradient(180deg,rgba(22,9,16,.94) 0%,rgba(22,9,16,.74) 100%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--smr-line);--padding-top:12px;--padding-bottom:12px;--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter)}
.e-con.smr-header-inner{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px;max-width:1240px;margin-inline:auto;width:100%}
.e-con.smr-brand{gap:3px;flex:none;width:auto}
.smr-brand-name .elementor-heading-title{font-family:var(--smr-serif);font-weight:500;font-size:29px;letter-spacing:.16em;text-transform:uppercase;line-height:1;background:linear-gradient(100deg,#F6D6BA 0%,#D6A47F 40%,#B47A5A 70%,#EDC3A0 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.smr-brand-name .elementor-heading-title a{color:inherit;-webkit-text-fill-color:transparent}
.smr-brand-tag .elementor-heading-title{font-family:var(--smr-sans);font-weight:400;font-size:9.5px;letter-spacing:.46em;text-transform:uppercase;color:var(--smr-gold-2);line-height:1;padding-left:.2em}
.smr-nav{flex:1 1 auto;width:auto}
.smr-nav .elementor-nav-menu--main .elementor-item{font-family:var(--smr-sans);font-size:12px;font-weight:400;letter-spacing:.24em;text-transform:uppercase;color:var(--smr-ivory);padding:10px 18px}
.smr-nav .elementor-nav-menu--main .elementor-item:hover,.smr-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--smr-gold)}
.smr-nav .elementor-nav-menu--main .elementor-item:after{background-color:var(--smr-gold)!important;height:1px!important}
.smr-nav .elementor-menu-toggle{background:transparent;color:var(--smr-ivory);font-size:24px;padding:6px}
.smr-nav .elementor-menu-toggle svg{fill:var(--smr-ivory);width:24px;height:24px}
.smr-nav .elementor-nav-menu--dropdown{background:var(--smr-surface);border-top:1px solid var(--smr-line);border-bottom:1px solid var(--smr-line)}
.smr-nav .elementor-nav-menu--dropdown .elementor-item{font-family:var(--smr-serif);font-size:26px;color:var(--smr-ivory);padding:16px var(--smr-gutter);justify-content:flex-start}
.smr-nav .elementor-nav-menu--dropdown .elementor-item:hover,.smr-nav .elementor-nav-menu--dropdown .elementor-item.elementor-item-active{background:var(--smr-surface-2);color:var(--smr-gold)}
.e-con.smr-header-actions{display:flex;flex-direction:row;align-items:center;gap:20px;flex:none;width:auto}
.smr-lang .elementor-heading-title{font-family:var(--smr-sans);font-size:11.5px;letter-spacing:.22em;color:var(--smr-muted);line-height:1}
.smr-lang .elementor-heading-title b{color:var(--smr-gold);font-weight:500}
.smr-btn-sm .elementor-button{padding:12px 20px;font-size:11px}
@media (max-width:1024px){.elementor-element.smr-nav{order:3;flex:0 0 auto;width:auto;max-width:44px;position:static}.e-con.smr-header-actions{margin-left:auto}.e-con.smr-header-inner{position:static}.smr-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{position:absolute;left:0!important;right:0!important;width:auto!important;top:100%!important;margin-top:0;box-shadow:0 30px 60px -20px rgba(0,0,0,.8)}}
@media (max-width:767px){.smr-header .smr-btn-sm{display:none}.smr-brand-name .elementor-heading-title{font-size:22px}.e-con.smr-header{--padding-top:10px;--padding-bottom:10px}.smr-brand-tag .elementor-heading-title{font-size:8.5px}}
/* ===== footer ===== */
.e-con.smr-footer{background:radial-gradient(60% 100% at 100% 0%,rgba(110,26,58,.35) 0%,rgba(18,6,12,0) 60%),#12060c;border-top:1px solid var(--smr-line);--padding-top:clamp(70px,8vw,110px);--padding-bottom:0px;--padding-left:var(--smr-gutter);--padding-right:var(--smr-gutter)}
.e-con.smr-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.2fr;gap:clamp(32px,4vw,64px);max-width:1240px;margin-inline:auto;width:100%;--padding-bottom:clamp(50px,6vw,80px)}
.smr-fhead .elementor-heading-title{font-family:var(--smr-sans);font-size:11px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--smr-gold);line-height:1.4}
.smr-flist .elementor-icon-list-item{padding:5px 0!important}
.smr-flist .elementor-icon-list-text{font-size:15px;color:var(--smr-text);transition:color .3s}
.smr-flist a:hover .elementor-icon-list-text{color:var(--smr-gold)}
.smr-flist .elementor-icon-list-icon svg{fill:var(--smr-gold);width:14px;height:14px}
.smr-footer .elementor-widget-text-editor{font-size:15px;color:var(--smr-text)}
.e-con.smr-fbottom{border-top:1px solid var(--smr-line);display:flex;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;max-width:1240px;margin-inline:auto;width:100%;--padding-top:24px;--padding-bottom:28px}
.smr-fbottom .elementor-widget-text-editor,.smr-fbottom .elementor-icon-list-text{font-size:13px;color:var(--smr-muted)}
.smr-fbottom .elementor-icon-list-items{gap:4px 24px}
@media (max-width:1024px){.e-con.smr-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.e-con.smr-footer-grid{grid-template-columns:1fr}}
.elementor-element.smr-footer-mark{width:100%;max-width:none;overflow:hidden;margin-top:clamp(10px,2vw,30px);pointer-events:none;user-select:none}
.smr-footer-mark .elementor-heading-title{font-family:var(--smr-serif);font-weight:500;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(78px,19vw,330px);line-height:.74;white-space:nowrap;background:var(--smr-foil);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;opacity:.9;transform:translateY(.14em);animation:smrShimmer 14s ease-in-out infinite}
/* ===== barra contatti mobile ===== */
.e-con.smr-mbar{display:none}
@media (max-width:767px){
 .e-con.smr-mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:998;gap:0;background:var(--smr-bg);border-top:1px solid var(--smr-line-2);--padding-top:0px;--padding-bottom:env(safe-area-inset-bottom);--padding-left:0px;--padding-right:0px}
 .smr-mbar .elementor-widget-button,.smr-mbar .elementor-button{width:100%;border-radius:0}
 .smr-mbar .elementor-button{padding:19px 10px;box-shadow:none!important}
 .smr-mbar .elementor-button .elementor-button-content-wrapper{justify-content:center}
 .smr-mbar .smr-btn-ghost .elementor-button{box-shadow:none;background:var(--smr-surface)}
 body{padding-bottom:60px}
 #ast-scroll-top{display:none!important}
}/* End custom CSS */