/* Avorino v7 — Footer Embed CSS (externalized) */

/* BASE TYPOGRAPHY */
body{font-family:'DM Sans',system-ui,sans-serif;font-size:17px;font-weight:400;color:#111;background:#e8e4df;line-height:1.9;letter-spacing:.005em;word-spacing:.06em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;cursor:none}
h1,h2,h3,h4{font-family:'DM Serif Display',Georgia,serif;font-weight:400;margin:0}
h1{font-size:96px;line-height:1.04;letter-spacing:-.03em}
h2{font-size:64px;line-height:1.08;letter-spacing:-.02em}
h3{font-size:24px;line-height:1.2}
h4{font-size:24px;line-height:1.2}
p{margin:0}
a{text-decoration:none;color:inherit;cursor:none}
button{border:none;background:none;cursor:none;font-family:inherit}
blockquote{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-style:italic;font-size:24px;line-height:1.7;margin:0;padding:0;border:none}
img{display:block;max-width:100%;height:auto}
ul,ol{list-style:none;margin:0;padding:0}

/* BLEND MODES & INITIAL STATES */
.cursor-ring{mix-blend-mode:difference}
.cursor-dot{mix-blend-mode:difference}


/* RESPONSIVE TYPOGRAPHY (clamp) */
.hero-scroll-text{font-family:'DM Sans',system-ui,sans-serif;color:rgba(240,237,232,.45)}
.hero-subtitle{font-family:'DM Sans',system-ui,sans-serif;color:rgba(240,237,232,.6)}
.about-heading{display:block;font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:clamp(44px,5.5vw,80px);line-height:1.06;letter-spacing:-.025em;max-width:580px}
.process-heading,.testimonials-heading,.tools-heading,.cta-title{font-size:clamp(40px,4.5vw,64px)}
.process-step-title,.process-slide-title,.featured-panel-title{font-size:clamp(28px,3vw,44px)}
.service-title{font-size:clamp(22px,2.2vw,36px)}
.preloader-text{font-size:clamp(36px,5vw,64px)}
.nav-mobile-overlay a{font-size:clamp(28px,3vw,44px)}

/* PSEUDO-ELEMENTS */
.about-label::after,.featured-label::after,.section-label::after{content:'';flex:1;height:1px;background:#c8222a;opacity:.15}
.process-line::before{content:'';position:absolute;top:var(--line-top,61px);height:var(--line-h,80%);width:1px;background:rgba(17,17,17,.1)}
.process-slide-body{font-family:'DM Sans',system-ui,sans-serif;color:#111}
.service-card::after{content:'';position:absolute;inset:0;z-index:1;transition:opacity .6s ease}
.service-card--dark::after{background:linear-gradient(to bottom,rgba(17,17,17,.02) 0%,rgba(17,17,17,.15) 40%,rgba(17,17,17,.85) 100%)}
.service-card--teal::after{background:linear-gradient(to bottom,rgba(42,63,78,.02) 0%,rgba(42,63,78,.2) 40%,rgba(42,63,78,.9) 100%)}
.service-card--warm::after{background:linear-gradient(to bottom,rgba(139,115,85,.02) 0%,rgba(139,115,85,.15) 40%,rgba(139,115,85,.82) 100%)}
.featured-grid-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(17,17,17,0) 0%,rgba(17,17,17,.1) 40%,rgba(17,17,17,.75) 100%);z-index:1;transition:opacity .5s ease}
.hero-overlay{background:linear-gradient(to bottom,rgba(0,0,0,.02) 0%,rgba(0,0,0,.35) 100%);opacity:1}
/* Floating elements — base + shapes */
.float-el{position:absolute;pointer-events:none;z-index:1;opacity:0}
.float-el--line{width:1px;height:48px}
.float-el--cross{width:14px;height:14px}
.float-el--dot{width:5px;height:5px;border-radius:50%}
.float-el--ring{width:18px;height:18px;border-radius:50%}
.float-el--cross::before,.float-el--cross::after{content:'';position:absolute;background:currentColor}
.float-el--cross::before{width:14px;height:1px;top:50%;left:0}
.float-el--cross::after{width:1px;height:14px;left:50%;top:0}
/* Float positions — Hero */
.float-hero-1{top:18%;right:12%;color:rgba(240,237,232,.35)}
.float-hero-2{bottom:28%;right:22%;background-color:rgba(240,237,232,.4);color:rgba(240,237,232,.4)}
.float-hero-3{top:35%;right:8%;background-color:rgba(240,237,232,.25);color:rgba(240,237,232,.25)}
/* Float positions — About */
.float-about-1{top:15%;right:6%;border:1px solid rgba(17,17,17,.15);color:rgba(17,17,17,.15)}
.float-about-2{bottom:20%;left:4%;color:rgba(17,17,17,.12)}
/* Float positions — Stats */
.float-stats-1{top:20%;left:6%;color:rgba(240,237,232,.1)}
.float-stats-2{bottom:15%;right:8%;border:1px solid rgba(240,237,232,.12);color:rgba(240,237,232,.12)}
/* Float positions — Featured */
.float-featured-1{top:10%;right:5%;background-color:rgba(17,17,17,.12);color:rgba(17,17,17,.12)}
.float-featured-2{bottom:30%;left:3%;height:40px;background-color:rgba(17,17,17,.1);color:rgba(17,17,17,.1)}
/* Float positions — Process */
.float-process-1{top:12%;right:10%;background-color:rgba(17,17,17,.14);color:rgba(17,17,17,.14)}
.float-process-2{bottom:18%;right:5%;height:32px;background-color:rgba(17,17,17,.12);color:rgba(17,17,17,.12)}
/* Float positions — Testimonials */
.float-testimonials-1{top:15%;left:5%;color:rgba(17,17,17,.12)}
.float-testimonials-2{bottom:20%;right:8%;background-color:rgba(17,17,17,.12);color:rgba(17,17,17,.12)}
/* Float positions — Tools */
.float-tools-1{top:18%;right:7%;border:1px solid rgba(240,237,232,.1);color:rgba(240,237,232,.1)}
.float-tools-2{bottom:22%;left:6%;height:36px;background-color:rgba(240,237,232,.1);color:rgba(240,237,232,.1)}
/* Float positions — CTA */
.float-cta-1{top:22%;left:8%;color:rgba(240,237,232,.18)}
.float-cta-2{bottom:25%;right:10%;border:1px solid rgba(240,237,232,.14);color:rgba(240,237,232,.14)}
.testimonial-dot::before{content:'';position:absolute;inset:-10px}

/* TRANSITIONS & TRANSFORMS */
.cursor-ring{transition:width .3s ease,height .3s ease,opacity .3s ease;transform:translate(-50%,-50%)}
.cursor-ring span{transition:opacity .2s ease}
.cursor-dot{transform:translate(-50%,-50%);transition:opacity .2s ease}

/* Nav styles handled by avorino-nav-footer.css + avorino-nav.js */

/* Button transitions */
.btn-pill{transition:transform .5s cubic-bezier(.23,1,.32,1),box-shadow .3s ease}
.btn-pill .arrow{transition:transform .3s ease}
.cta-btn{transition:transform .5s cubic-bezier(.23,1,.32,1)}
.cta-btn .arrow{transition:transform .3s ease}

/* About link */
.about-link{transition:opacity .3s ease}
.about-link .arrow{transition:transform .3s ease,color .3s ease}

/* Service card */
.service-card-image{transition:transform 1.2s cubic-bezier(.23,1,.32,1);will-change:transform}
.service-desc{transition:opacity .5s ease .1s,max-height .5s ease}
.service-cta{transform:translateY(8px);transition:opacity .4s ease .15s,transform .4s ease .15s}
.service-cta .arrow{transition:transform .3s ease,color .3s ease}

/* Featured grid card */
.featured-grid-card-image{transition:transform 1.2s cubic-bezier(.23,1,.32,1)}

/* Process */
.process-step-dot{transition:background .5s ease,border-color .5s ease}

/* Testimonial */
.testimonial-dot{transition:all .4s ease}
.testimonial-arrow{transition:border-color .3s ease,background .3s ease}

/* Tool panel accordion */
.tool-panel{transition:flex .7s cubic-bezier(.23,1,.32,1)}
.tool-panel-bg{transition:transform .7s cubic-bezier(.23,1,.32,1)}
.tool-panel-num{font-family:'DM Serif Display',Georgia,serif;transition:opacity .5s ease}
.tool-panel-label{transition:opacity .4s ease,transform .4s ease}
.tool-panel-label-text{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#f0ede8}
.tool-visual{transition:opacity .6s ease .1s,transform .6s cubic-bezier(.23,1,.32,1) .1s}
.tool-panel-content{transition:opacity .5s ease .15s,transform .5s cubic-bezier(.23,1,.32,1) .15s}
.tool-cta{transition:opacity .3s ease,gap .3s ease,color .3s ease}
.tv-total-value,.tv-stat-big,.tv-gauge-amount{font-family:'DM Serif Display',Georgia,serif;color:rgba(201,169,110,.85)}
.tv-label,.tv-total-label,.tv-stat-sub,.tv-bar-label,.tv-gauge-status{font-family:'DM Sans',system-ui,sans-serif}

/* Footer links */
.footer-col a{transition:opacity .3s ease}
.footer-bottom-links a{transition:opacity .3s ease}

/* Services progress */
.services-progress-bar{transform-origin:left;transform:scaleX(0)}

/* Featured panel initial */
.featured-panel{opacity:0;transform:translateY(40px)}

/* Flip card 3D + font override */
.flip-card-inner{transform-style:preserve-3d}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom,.stat-suffix,.stat-separator{font-family:'DM Serif Display',Georgia,serif}

/* Heading-div font overrides — Webflow body font breaks inheritance on child divs/spans */
.featured-panel-title,.featured-panel-title>div,.featured-panel-title>div>span,
.featured-grid-card-title,.featured-grid-card-title>div,.featured-grid-card-title>div>span{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#f0ede8}
.process-heading,.process-heading>div,.process-heading>div>span,
.process-step-title,.process-slide-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#111}
.process-num{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-size:96px;line-height:1;color:#111;opacity:.12}
.service-title{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#f0ede8}
.testimonials-heading,.testimonials-heading>div,.testimonials-heading>div>span{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#111}
.tools-heading,.tools-heading>div,.tools-heading>div>span{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#f0ede8}
.testimonial-quote{font-family:'DM Serif Display',Georgia,serif;font-weight:400;font-style:italic;color:#f0ede8}
.footer-brand-name{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#f0ede8}
.featured-label,.featured-meta-label,.featured-meta-value,.featured-grid-card-meta,.featured-grid-card-meta>span{font-family:'DM Sans',system-ui,sans-serif;font-weight:400}
.footer-col a,.footer-bottom-links a,.footer-brand-desc,.footer-license,.footer-copy,.footer-cities-list,.footer-cities-label,.footer-col-title{font-family:'DM Sans',system-ui,sans-serif;color:#f0ede8}
.testimonial-author,.testimonial-location{font-family:'DM Sans',system-ui,sans-serif;color:#f0ede8}
.tool-name{font-family:'DM Serif Display',Georgia,serif;color:#f0ede8}
.tool-desc,.tool-cta{font-family:'DM Sans',system-ui,sans-serif;color:#f0ede8}

/* HOVER STATES */
.cursor-ring.hover-link{width:64px;height:64px}
.cursor-ring.hover-image{width:64px;height:64px}
.cursor-ring.hover-image span{opacity:1}
.cursor-ring.hover-link~.cursor-dot,.cursor-ring.hover-image~.cursor-dot{opacity:0}
.btn-pill:hover .arrow{transform:translateX(4px)}
.btn-pill:hover{box-shadow:0 8px 32px rgba(200,34,42,.15)}
.cta-btn:hover .arrow{transform:translateX(4px)}
.cta-btn:hover{box-shadow:0 8px 32px rgba(200,34,42,.2)}
.about-link:hover{opacity:1;color:#c8222a}
.about-link:hover .arrow{transform:translateX(4px);color:#c8222a}
.service-card:hover .service-card-image{transform:scale(1.06)}
.service-card:hover::after{opacity:.92}
.service-card:hover .service-desc{opacity:.65;max-height:120px}
.service-card:hover .service-cta{opacity:.7;transform:translateY(0)}
.service-cta:hover{opacity:1;color:#c8222a}
.service-cta:hover .arrow{transform:translateX(6px);color:#c8222a}
.featured-grid-card:hover .featured-grid-card-image{transform:scale(1.05)}
.featured-grid-card:hover::after{opacity:.9}
.tool-panel:hover{flex:3 1 0}
.tool-panel:hover .tool-panel-bg{transform:scale(1.06)}
.tool-panel:hover .tool-panel-label{opacity:0}
.tool-panel:hover .tool-panel-content{opacity:1;transform:translateY(0)}
.tool-panel:hover .tool-cta{opacity:1}
.tool-panel:hover::after{transform:scaleX(1)}
.testimonial-arrow:hover{border-color:rgba(240,237,232,.4);background:rgba(240,237,232,.05)}
.footer-col a:hover{opacity:.8}
.footer-bottom-links a:hover{opacity:.5}
.process-step-dot.active{background:#c8222a;border-color:#c8222a}

/* RESPONSIVE — LARGE VIEWPORTS */
@media(min-width:1600px){
.about,.featured,.process,.testimonials,.tools{padding-left:120px;padding-right:120px}
.services-header,.services-track{padding-left:120px;padding-right:120px}
.stats{padding-left:120px;padding-right:120px}
.footer{padding-left:120px;padding-right:120px}
.flip-card{width:84px;height:112px}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom{font-size:56px}
.stat-suffix,.stat-separator{font-size:44px}
}
@media(min-width:1920px){
.about,.featured,.process,.testimonials,.tools{padding-left:160px;padding-right:160px}
.services-header{padding:128px 160px 64px}
.services-track{padding:0 160px 128px;gap:40px}
.stats{padding-left:160px;padding-right:160px}
.footer{padding-left:160px;padding-right:160px}
.about-grid{gap:140px}
.testimonials-grid{gap:120px}
.tools-header{gap:120px}
.flip-card{width:96px;height:128px}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom{font-size:64px}
.stat-suffix,.stat-separator{font-size:52px}
.tool-card{padding:56px 44px}
.service-card{height:58vh;min-height:480px;max-height:740px}
.service-card-content{padding:52px 52px 68px}
}
@media(min-width:2560px){
.about,.featured,.process,.testimonials,.tools{padding-left:240px;padding-right:240px}
.services-header{padding:160px 240px 80px}
.services-track{padding:0 240px 160px;gap:48px}
.stats{padding-left:240px;padding-right:240px}
.footer{padding-left:240px;padding-right:240px}
.service-card{height:55vh;min-height:500px;max-height:780px}
.service-card-content{padding:56px 56px 72px}
.service-title{font-size:clamp(28px,2vw,42px)}
.service-number{font-size:12px;margin-bottom:28px}
.service-desc{font-size:15px}
.service-cta{font-size:15px}
.flip-card{width:108px;height:144px}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom{font-size:72px}
.stat-suffix,.stat-separator{font-size:60px}
.stats-grid{gap:96px}
}

/* RESPONSIVE — SMALL VIEWPORTS */
@media(max-width:991px){
.nav-spacer{height:80px}
.hero{height:calc(100vh - 80px)}
.about-grid,.process-header,.testimonials-grid,.tools-header{grid-template-columns:1fr;gap:48px}
.services-header{padding:96px 48px 48px}
.services-track{padding:0 48px 96px;gap:24px}
.service-card{width:65vw;min-width:300px;height:55vh;min-height:380px;max-height:560px}
.service-card-content{padding:36px 36px 48px}
.service-title{font-size:clamp(20px,3vw,28px)}
.service-number{margin-bottom:20px}
.stats-grid{grid-template-columns:repeat(2,1fr);gap:48px}
.footer-top{grid-template-columns:1fr 1fr;gap:48px}
.hero-content{left:32px;bottom:32px}
.featured-panel{margin-left:32px;margin-right:32px}
.featured-grid{grid-template-columns:1fr;gap:24px}
.featured-grid-card{height:38vh;min-height:260px;max-height:380px}
.featured-image-wrap{height:55vh}
.testimonial-card{min-height:400px}
.process-timeline{grid-template-columns:48px 1px 1fr;gap:0 24px}
.process-step-number{font-size:48px}
.process-stage{grid-template-columns:60px 1fr;gap:0 32px}
.process-vis{display:none}
.process-num{font-size:64px}
.cta-container{min-height:44vh}
}
@media(max-width:767px){
.nav-burger{display:flex}
.nav-links{display:none}
.nav-mobile-overlay{display:flex}
.nav-spacer{height:56px}
.section-pad,.about,.stats,.featured,.process,.testimonials,.tools,.footer{padding-left:24px;padding-right:24px}
.about,.featured,.process,.testimonials,.tools{padding-top:80px;padding-bottom:80px}
.hero{padding:16px;height:calc(100vh - 56px)}
.hero-content{left:24px;bottom:24px}
.hero-subtitle{font-size:11px;letter-spacing:.2em}
.hero-scroll-indicator{bottom:20px}
.cta-section{padding:16px}
.cta-container{min-height:40vh}
.cta-content{padding:48px 32px}
.services-header{padding:80px 24px 32px}
.services-track{padding:0 24px 80px;gap:16px}
.service-card{width:72vw;min-width:260px;height:52vh;min-height:340px;max-height:500px}
.service-card-content{padding:28px 28px 40px}
.service-title{font-size:clamp(18px,4vw,24px);margin-bottom:12px}
.service-number{font-size:9px;margin-bottom:16px}
.service-desc{opacity:.55;max-height:100px;font-size:13px}
.service-cta{opacity:.6;transform:translateY(0);font-size:13px;margin-top:16px}
.services-progress{width:80px}
.services-counter-wrap{gap:20px}
.stats{padding:80px 24px}
.stats-grid{grid-template-columns:1fr 1fr;gap:32px 24px}
.stat-label{font-size:9px;letter-spacing:.2em}
.flip-card{width:48px;height:64px}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom{font-size:28px}
.stat-suffix{font-size:24px}
.stat-separator{font-size:24px;margin-bottom:8px}
.footer-top{grid-template-columns:1fr}
.tools-accordion{flex-direction:column;height:auto;min-height:0;max-height:none;gap:12px}
.tool-panel{min-height:80px;flex:none}
.tool-panel:hover{flex:none}
.tool-panel-num{display:none}
.tool-panel-label{position:relative;bottom:auto;left:auto;transform:none;padding:24px 28px}
.tool-panel-label-text{font-size:18px}
.tool-panel:hover .tool-panel-label{opacity:1;transform:none}
.tool-visual{display:none}
.tool-preview{display:none}
.tool-panel-content{position:relative;padding:0 28px 28px;opacity:1;transform:none;pointer-events:auto;display:none}
.tool-panel:hover .tool-panel-content{display:block}
.tool-panel::after{display:none}
.featured-image-wrap{height:40vh}
.featured-panel{margin-top:-48px;margin-left:16px;margin-right:16px;padding:40px 32px}
.featured-panel-title{font-size:clamp(24px,5vw,36px)}
.featured-grid-card{height:32vh;min-height:220px;max-height:320px}
.process-stage{grid-template-columns:1fr;gap:24px 0}
.process-num{display:none}
.process-vis{display:none}
.process-slides{min-height:180px}
.process-slide-title{font-size:clamp(24px,5vw,36px)}
.process-bar{margin-top:32px}
.testimonials-left{position:static}
.testimonials-grid{gap:48px}
.testimonial-card{min-height:360px}
.testimonial-slide{padding:40px 32px 80px}
.testimonial-quote{font-size:18px}
.about-label,.featured-label{margin-bottom:40px}
.about-body{margin-bottom:32px}
.featured-grid-card-content{padding:32px}
.cta-title{margin-bottom:32px}
.cta-btn{padding:14px 32px}
.btn-pill{padding:14px 28px}
.testimonial-stars{margin-bottom:24px}
.testimonial-quote{margin-bottom:32px}
.footer-top{padding-bottom:48px}
.footer-bottom-links{gap:24px}
.process-stage{min-height:auto}
.press-item{flex:0 0 160px;height:160px;margin-left:32px;margin-right:32px}
.press-item img{width:160px;height:160px}
.float-el{display:none}
.cursor-ring,.cursor-dot{display:none}
}
@media(max-width:479px){
.nav-spacer{height:48px}
.hero{height:calc(100vh - 48px);padding:12px}
.hero-content{left:16px;bottom:20px}
.hero-subtitle{font-size:10px}
.hero-scroll-indicator{bottom:16px}
.hero-scroll-line{height:32px}
.about,.featured,.process,.testimonials,.tools{padding-top:64px;padding-bottom:64px;padding-left:16px;padding-right:16px}
.about-heading{font-size:clamp(32px,8vw,44px)}
.about-body{font-size:16px}
.about-grid{gap:32px}
.services-header{padding:64px 16px 24px;flex-direction:column;align-items:flex-start;gap:20px}
.services-track{padding:0 16px 64px;gap:12px}
.service-card{width:82vw;min-width:240px;height:48vh;min-height:300px;max-height:420px}
.service-card-content{padding:20px 20px 28px}
.service-title{font-size:18px;margin-bottom:8px}
.service-number{font-size:9px;margin-bottom:12px}
.service-desc{font-size:12px;line-height:1.6}
.service-cta{font-size:12px;margin-top:12px}
.services-counter{font-size:12px}
.services-progress{width:60px}
.stats{padding:64px 16px}
.stats-grid{gap:24px 16px}
.flip-card{width:40px;height:56px}
.flip-card-top,.flip-card-bottom,.flip-card-flip-top,.flip-card-flip-bottom{font-size:24px}
.stat-suffix,.stat-separator{font-size:20px}
.stat-digits{gap:4px}
.stat-label{font-size:8px;letter-spacing:.15em}
.featured-image-wrap{height:32vh}
.featured-panel{padding:32px 24px;margin-left:12px;margin-right:12px}
.featured-panel-title{font-size:clamp(20px,6vw,28px)}
.featured-panel-meta{gap:24px}
.featured-grid{margin-top:48px;gap:16px}
.featured-grid-card{height:28vh;min-height:180px;max-height:260px}
.process-header{gap:32px}
.process-bar{display:none}
.testimonial-card{min-height:320px}
.testimonial-slide{padding:32px 24px 72px}
.testimonial-quote{font-size:16px}
.testimonial-nav{left:24px;right:24px;bottom:32px}
.tool-panel-label{padding:20px 20px}
.tool-panel-label-text{font-size:16px}
.tool-panel-content{padding:0 20px 24px}
.tool-name{font-size:20px}
.tool-desc{font-size:14px}
.cta-section{padding:12px}
.cta-container{min-height:36vh}
.cta-content{padding:40px 24px}
.about-label,.featured-label{margin-bottom:32px}
.about-body{margin-bottom:24px}
.featured-grid-card-content{padding:24px}
.featured-grid{margin-top:32px}
.cta-title{margin-bottom:24px}
.cta-btn{padding:12px 28px;font-size:13px}
.btn-pill{padding:12px 24px;font-size:13px}
.testimonial-stars{margin-bottom:20px}
.testimonial-quote{margin-bottom:24px}
.footer{padding:48px 16px 28px}
.footer-top{padding-bottom:36px;gap:28px}
.footer-bottom-links{gap:16px}
.footer-bottom{gap:16px;flex-direction:column}
.process-stage{min-height:auto}
.press-item{flex:0 0 120px;height:120px;margin-left:16px;margin-right:16px}
.press-item img{width:120px;height:120px}
}
