/*
    Theme Name: Dhomi
    Theme URI: https://www.dhomisnc.com
    Description: Base
    Version: 1.0
    Author: Filippo Montanari
    Author URI: https://www.linkedin.com/in/filippomontanari/
    Text Domain: dhomi
    Domain Path: /languages
*/
@layer theme {
  :root {
    --font-sans:"Manrope", ui-sans-serif, system-ui, sans-serif;
    --spacing:.25rem;
    --container-sm:24rem;
    --container-xl:36rem;
    --container-2xl:42rem;
    --container-3xl:48rem;
    --container-6xl:72rem;
    --text-xs:.75rem;
    --text-xs--line-height:calc(1 / .75);
    --text-sm:.875rem;
    --text-sm--line-height:calc(1.25 / .875);
    --text-base:1rem;
    --text-base--line-height:calc(1.5 / 1);
    --text-lg:1.125rem;
    --text-lg--line-height:calc(1.75 / 1.125);
    --text-xl:1.25rem;
    --text-xl--line-height:calc(1.75 / 1.25);
    --text-3xl:1.875rem;
    --text-3xl--line-height:calc(2.25 / 1.875);
    --text-4xl:2.25rem;
    --text-4xl--line-height:calc(2.5 / 2.25);
    --text-5xl:3rem;
    --text-5xl--line-height:1;
    --text-6xl:3.75rem;
    --text-6xl--line-height:1;
    --font-weight-medium:500;
    --leading-relaxed:1.625;
    --blur-md:12px;
    --blur-2xl:40px;
    --default-transition-duration:.15s;
    --default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);
    --default-font-family:"Manrope", ui-sans-serif, system-ui, sans-serif;
    --color-background:var(--background);
    --color-foreground:var(--foreground);
    --color-border:var(--border);
    --font-display:"Inter", ui-sans-serif, system-ui, sans-serif;
    --radius:.75rem;
    --background:oklch(98.8% .008 85);
    --foreground:oklch(23% .012 60);
    --card:oklch(100% 0 0);
    --primary:oklch(70% .176 58);
    --primary-foreground:oklch(99% .005 90);
    --secondary:oklch(95.5% .026 85);
    --secondary-foreground:oklch(32% .05 65);
    --muted: oklch(95.8% .012 85);
    --muted-foreground:oklch(52% .025 65);
    --accent:oklch(83% .15 82);
    --accent-foreground:oklch(25% .04 65);
    --border:oklch(90.6% .016 80);
    --input:oklch(90.6% .016 80);
    --ring:oklch(70% .176 58);
    --gold:oklch(83% .16 84);
    --ember:oklch(68% .185 48);
    --gradient-brand:linear-gradient(100deg, var(--gold), var(--ember));
    --shadow-soft:0 18px 45px -25px oklch(45% .12 55/.45);
    --shadow-lift:0 30px 70px -35px oklch(40% .12 55/.55);
  }
}

@layer base {
*,:before,:after,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}
html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif);font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent;scroll-behavior: smooth;}
h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:bold}
a{color:inherit;text-decoration:inherit}
ul,ol,menu{list-style:none}
img,svg{vertical-align:middle;display:block}
img{max-width:100%;height:auto}
button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}
*{border-color:var(--color-border)}
body{background-color:var(--color-background);color:var(--color-foreground);font-family:var(--font-sans)}
h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em}
}

@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-ring-color{syntax:"*";inherits:false}
@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-ring-inset{syntax:"*";inherits:false}
@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}
@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
@property --tw-blur{syntax:"*";inherits:false}
@property --tw-backdrop-blur{syntax:"*";inherits:false}

@layer utilities {
  .absolute{position:absolute}
  .relative{position:relative}
  .sticky{position:sticky}
  .-inset-4{inset:calc(var(--spacing) * -4)}
  .top-0{top:0}
  .-z-10{z-index:calc(10 * -1)}
  .z-50{z-index:50}
  .mx-auto{margin-inline:auto}
  .mt-2{margin-top:calc(var(--spacing) * 2)}
  .mt-3{margin-top:calc(var(--spacing) * 3)}
  .mt-4{margin-top:calc(var(--spacing) * 4)}
  .mt-5{margin-top:calc(var(--spacing) * 5)}
  .mt-7{margin-top:calc(var(--spacing) * 7)}
  .mt-8{margin-top:calc(var(--spacing) * 8)}
  .mt-10{margin-top:calc(var(--spacing) * 10)}
  .flex{display:flex}
  .grid{display:grid}
  .hidden{display:none}
  .inline-flex{display:inline-flex}
  .size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}
  .size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}
  .size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}
  .h-8{height:calc(var(--spacing) * 8)}
  .h-9{height:calc(var(--spacing) * 9)}
  .h-10{height:calc(var(--spacing) * 10)}
  .min-h-screen{min-height:100vh}
  .w-auto{width:auto}
  .w-full{width:100%}
  .max-w-2xl{max-width:var(--container-2xl)}
  .max-w-3xl{max-width:var(--container-3xl)}
  .max-w-6xl{max-width:var(--container-6xl)}
  .max-w-sm{max-width:var(--container-sm)}
  .max-w-xl{max-width:var(--container-xl)}
  .flex-1{flex:1}
  .shrink-0{flex-shrink:0}
  .cursor-pointer{cursor:pointer}
  .flex-col{flex-direction:column}
  .flex-wrap{flex-wrap:wrap}
  .items-center{align-items:center}
  .justify-between{justify-content:space-between}
  .justify-center{justify-content:center}
  .gap-1{gap:var(--spacing)}
  .gap-2{gap:calc(var(--spacing) * 2)}
  .gap-3{gap:calc(var(--spacing) * 3)}
  .gap-4{gap:calc(var(--spacing) * 4)}
  .gap-5{gap:calc(var(--spacing) * 5)}
  .gap-6{gap:calc(var(--spacing) * 6)}
  .gap-7{gap:calc(var(--spacing) * 7)}
  .gap-8{gap:calc(var(--spacing) * 8)}
  .gap-10{gap:calc(var(--spacing) * 10)}
  .overflow-hidden{overflow:hidden}
  .rounded-2xl{border-radius:calc(var(--radius) + 8px)}
  .rounded-3xl{border-radius:calc(var(--radius) + 12px)}
  .rounded-\[2rem\]{border-radius:2rem}
  .rounded-md{border-radius:calc(var(--radius) - 2px)}
  .rounded-xl{border-radius:calc(var(--radius) + 4px)}
  .border{border-style:solid;border-width:1px}
  .border-y{border-block-style:solid;border-block-width:1px}
  .border-t{border-top-style:solid;border-top-width:1px}
  .border-b{border-bottom-style:solid;border-bottom-width:1px}
  .border-border{border-color:var(--border)}
  .border-border\/60{border-color:var(--border)}
  @supports (color:color-mix(in lab, red, red)){
    .border-border\/60{border-color:color-mix(in oklab, var(--border) 60%, transparent)}
  }
  .border-input{border-color:var(--input)}
  .bg-background,.bg-background\/85{background-color:var(--background)}
  @supports (color:color-mix(in lab, red, red)){
    .bg-background\/85{background-color:color-mix(in oklab, var(--background) 85%, transparent)}
  }
  .bg-card{background-color:var(--card)}
  .bg-primary{background-color:var(--primary)}
  .bg-secondary,.bg-secondary\/40{background-color:var(--secondary)}
  @supports (color:color-mix(in lab, red, red)){
    .bg-secondary\/40{background-color:color-mix(in oklab, var(--secondary) 40%, transparent)}
  }
  .text-brand-gradient{background-image:var(--gradient-brand);color:#0000;-webkit-background-clip:text;background-clip:text}
  .bg-brand-gradient{background-image:var(--gradient-brand)}
  .bg-muted, .bg-muted\/50 { background-color: var(--muted); }
  .object-cover{object-fit:cover}
  .p-2{padding:calc(var(--spacing) * 2)}
  .p-6{padding:calc(var(--spacing) * 6)}
  .p-8{padding:calc(var(--spacing) * 8)}
  .px-3{padding-inline:calc(var(--spacing) * 3)}
  .px-5{padding-inline:calc(var(--spacing) * 5)}
  .px-8{padding-inline:calc(var(--spacing) * 8)}
  .py-1 { padding-block: var(--spacing)}
  .py-3{padding-block:calc(var(--spacing) * 3)}
  .py-5{padding-block:calc(var(--spacing) * 5)}
  .py-12{padding-block:calc(var(--spacing) * 12)}
  .py-14{padding-block:calc(var(--spacing) * 14)}
  .py-16{padding-block:calc(var(--spacing) * 16)}
  .pb-20{padding-bottom:calc(var(--spacing) * 20)}
  .text-center{text-align:center}
  .text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}
  .text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}
  .text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}
  .text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}
  .text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}
  .text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}
  .text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}
  .leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}
  .leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}
  .font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}
  .whitespace-nowrap{white-space:nowrap}
  .text-foreground{color:var(--foreground)}
  .text-muted-foreground{color:var(--muted-foreground)}
  .text-primary{color:var(--primary)}
  .text-primary-foreground{color:var(--primary-foreground)}
  .text-secondary-foreground{color:var(--secondary-foreground)}
  .opacity-15{opacity:.15}
  .opacity-90{opacity:.9}
  .shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
  .shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
  .shadow-lift{box-shadow:var(--shadow-lift)}
  .shadow-soft{box-shadow:var(--shadow-soft)}
  .blur-2xl{--tw-blur:blur(var(--blur-2xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}
  .backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}
  .transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}
  @media (hover:hover){
    .hover\:bg-accent:hover{background-color:var(--accent)}
    .hover\:bg-primary\/90:hover{background-color:var(--primary)}
    @supports (color:color-mix(in lab, red, red)){
      .hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}
    }
    .hover\:bg-secondary\/80:hover{background-color:var(--secondary)}
    @supports (color:color-mix(in lab, red, red)){
      .hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}
    }
    .hover\:text-accent-foreground:hover{color:var(--accent-foreground)}
    .hover\:text-foreground:hover, section a:hover, footer a:hover{color:var(--foreground)}
  }
  .focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}
  .focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--ring)}
  .focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}
  .disabled\:pointer-events-none:disabled{pointer-events:none}
  .disabled\:cursor-not-allowed:disabled{cursor:not-allowed}
  .disabled\:opacity-50:disabled{opacity:.5}
  @media (width>=40rem){
    .sm\:h-11{height:calc(var(--spacing) * 11)}
    .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
    .sm\:p-12{padding:calc(var(--spacing) * 12)}
    .sm\:text-right{text-align:right}
    .sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}
    .sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}
    .sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}
  }
  @media (width>=48rem){
    .md\:flex{display:flex}
    .md\:hidden{display:none}
    .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
    .md\:grid-cols-3 {grid-template-columns: repeat(3, minmax(0, 1fr));}
    .md\:pt-24 { padding-top: calc(var(--spacing) * 24); }
    .md\:py-20{padding-block:calc(var(--spacing) * 20)}
    .md\:py-24{padding-block:calc(var(--spacing) * 24)}
    .md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}
  }
  @media (width>=64rem){
    .lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
  }
  .\[\&_svg\]\:pointer-events-none svg{pointer-events:none}
  .\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}
  .\[\&_svg\]\:shrink-0 svg{flex-shrink:0}
  .\[\&\.active\]\:text-foreground.active{color:var(--foreground)}
}
nav li a {
    color: var(--muted-foreground);
}
nav li a:hover, nav li.current_page_item a {
    color: var(--foreground);
}
.mobile-menu nav li a {
    padding-block: calc(var(--spacing) * 2.5);
    display: block;
}
.tab-buttons {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 5px;
  border-radius: 18px;
  color: var(--foreground);
}
@media (width>=64rem){
    .tab-buttons {
      flex-direction: row;
    }
}
.tab-buttons button {
  flex: 1;
  border: 0;
  background: transparent;
  border-radius: 14px;
  cursor: pointer;
}
.tab-buttons button.active {
  background: #fff;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.07);
    font-weight: bold;
}
.tabs-content {
  background: #fff;
  border-radius: 28px;
  padding: 10px;
  box-shadow: 0 20px 70px rgba(0, 0, 0, 0.06);
  color: var(--foreground);
}
.tab-panel {
  display: none;
}
.tab-panel.active {
  display: block;
}
.tab-panel h3 {
  font-size: 25px;
  line-height: 1.15;
  margin: 0 0 28px;
}
.frm_style_stile-formidable {
    margin-top: 2rem;
}
#frm_field_12-line2_container {
    display: none;
}
.frm_form_field:not(.frm_compact) .frm_dropzone {
    max-width: 100%;
}
#frm_field_12_container, #frm_field_6_container, #frm_field_22_container, #frm_field_31_container {
    margin-bottom: 0;
}
.with_frm_style .frm_form_fields > fieldset {
    padding: 0;
}
input[type=tel]::placeholder {
    color: #e6dfd4 !important;
}
.frm_forms a {
    text-decoration: underline;
}
#contattaci {
    scroll-margin-top: 3rem;
}
/* embed center alignment */
.twitter-tweet { margin:auto !important; display: block; }
.iframe-container { text-align: center; }
.embed-responsive {
	position: relative;
	display: block;
	height: 0;
	padding: 0;
	overflow: hidden;
	margin-bottom: 2.5rem;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.embed-responsive-16by9 {
	padding-bottom: 56.25%;
}