.elementor-kit-9{--e-global-color-primary:#0E382B;--e-global-color-secondary:#174D3C;--e-global-color-text:#2B3830;--e-global-color-accent:#C5A059;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-weight:600;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@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 *//* ==========================================================================
   VIHDIN PINTA-FIX OY – koko sivuston jaetut tyylit (prototyypin style.css)
   Kaikki sivut perii nämä. Sivukohtaista CSS:ää ei tarvita.
   HUOM 1: Elementorin container ei tulosta omia CSS-luokkia -> käytämme _element_id.
   HUOM 2: boxed-containerin padding on .e-con-inner-elementissä.
   HUOM 3: containerin oletus align-items on center -> pakotetaan stretch.
   HUOM 4: Elementorin globaalit värisäännöt tulevat tämän jälkeen samassa
           tiedostossa, joten värit tarvitsevat !importantin.
   ========================================================================== */
body{font-family:'Poppins',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:15.5px;font-weight:400;line-height:1.72;color:#2B3830;background:#FFFFFF;-webkit-font-smoothing:antialiased;overflow-x:hidden}
#pf-headerslot,#pf-footerslot{padding:0!important;gap:0!important}
#pf-headerslot .elementor-widget,#pf-footerslot .elementor-widget{width:100%!important;padding:0!important;margin:0!important}
#pf-otsikko-1,#pf-otsikko-2,#pf-otsikko-3,#pf-miksi-teksti,#pf-yhteys-vasen,#pf-yhteys-oikea,
#pf-kortti-1,#pf-kortti-2,#pf-kortti-3,#pf-kortti-sis-1,#pf-kortti-sis-2,#pf-kortti-sis-3,
#pf-lisa-1,#pf-lisa-2,#pf-lisa-3,#pf-stat-1,#pf-stat-2,#pf-stat-3,#pf-stat-4,
#pf-kaksi-vasen,#pf-kaksi-oikea,#pf-alasivu-in{align-items:stretch!important}

/* ---------- HEADER ---------- */
.pf-hdr{width:100%;background:#FFFFFF;border-bottom:1px solid #E2E6DF;padding:16px 0;position:sticky;top:0;z-index:100}
.pf-hdr *,.pf-mob *,.pf-alatunniste *{box-sizing:border-box}
.pf-hdr .pf-kontti{width:100%;max-width:1380px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:32px}
@media(min-width:768px){.pf-hdr .pf-kontti{padding:0 36px}}
.pf-hdr a{text-decoration:none;color:inherit;transition:all .2s ease-in-out}
.pf-logo{display:flex;align-items:center;gap:12px;flex:none}
.pf-logo svg{height:38px;width:38px;display:block}
.pf-logo-nimi{display:flex;flex-direction:column;line-height:1.1;white-space:nowrap}
.pf-logo-paa{font-weight:700;font-size:22px;letter-spacing:-.02em;color:#0E382B}
.pf-logo-kevyt{font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7A8A80;margin-top:2px}
.pf-toiminnot{display:flex;align-items:center;gap:32px}
.pf-navi{display:flex;align-items:center;gap:28px}
.pf-navi a{font-size:15px;font-weight:500;color:#2C3A32;padding:8px 0;position:relative}
.pf-navi a::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2.5px;background:#C5A059;border-radius:2px;transform:scaleX(0);transform-origin:left center;transition:transform .22s cubic-bezier(.16,1,.3,1)}
.pf-navi a:hover{color:#0E382B}
.pf-navi a:hover::after{transform:scaleX(1)}
.pf-navi a.pf-aktiivinen{color:#0E382B;font-weight:600}
.pf-navi a.pf-aktiivinen::after{transform:scaleX(1);background:#0E382B}
.pf-puhelin{display:flex;flex-direction:column;text-align:right;flex:none}
.pf-puhelin span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7A8A80;font-weight:500}
.pf-puhelin strong{font-size:16.5px;font-weight:700;color:#0E382B;line-height:1.2}
.pf-puhelin:hover strong{color:#A6823B}
.pf-hdr-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 24px;font-size:14px;font-weight:600;background:#0E382B;color:#FFFFFF!important;border-radius:6px;border:1.5px solid #0E382B;line-height:1.3}
.pf-hdr-btn:hover{background:#174D3C;border-color:#174D3C}
.pf-valikko-btn{display:none;flex-direction:column;align-items:center;gap:5px;background:#F9FAF7;border:1px solid #E2E6DF;border-radius:6px;cursor:pointer;color:#0E382B;padding:10px 14px}
.pf-valikko-btn .pf-palkit{display:flex;flex-direction:column;gap:4px}
.pf-valikko-btn .pf-palkki{display:block;width:22px;height:2px;background:currentColor;border-radius:2px}
.pf-valikko-btn .pf-teksti{font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:600}
.pf-peite{position:fixed;inset:0;background:rgba(7,36,25,.55);z-index:998;border:0}
.pf-mob{position:fixed;top:0;right:0;width:min(340px,86vw);height:100%;background:#FFFFFF;z-index:999;padding:22px;display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(7,36,25,.18);overflow-y:auto}
.pf-mob[hidden],.pf-peite[hidden]{display:none}
.pf-mob-yla{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid #E2E6DF}
.pf-mob .pf-sulje{background:none;border:0;font-size:30px;line-height:1;cursor:pointer;color:#0E382B}
.pf-mob-navi{display:flex;flex-direction:column;margin-top:8px}
.pf-mob-navi a{display:flex;align-items:center;justify-content:space-between;padding:16px 2px;border-bottom:1px solid #E2E6DF;font-size:16px;font-weight:500;color:#0E382B;text-decoration:none}
.pf-mob-kortti{background:#F9FAF7;border:1px solid #E2E6DF;border-radius:10px;padding:14px 16px}
.pf-mob-titteli{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7A8A80;margin-bottom:2px}
.pf-mob-puh{font-size:17px;font-weight:700;color:#0E382B;text-decoration:none}
.pf-mob-nappi{display:flex;align-items:center;justify-content:center;width:100%;margin-top:16px;padding:14px 24px;background:#C5A059;color:#FFFFFF!important;border-radius:6px;font-weight:500;font-size:14.5px;text-decoration:none}
.pf-mob-aukiolo{font-size:12.5px;color:#7A8A80;margin-top:12px;text-align:center}
.pf-mobiilipalkki{display:none;position:fixed;left:0;right:0;bottom:0;z-index:120;background:#FFFFFF;border-top:1px solid #E2E6DF;padding:10px 14px;gap:10px}
.pf-mp-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14.5px;font-weight:500;padding:12px 18px;border-radius:6px;border:1.5px solid transparent;text-decoration:none;line-height:1.3}
.pf-mp-btn svg{width:15px;height:15px}
.pf-mp-reuna{background:transparent;color:#0E382B!important;border-color:#0E382B}
.pf-mp-kulta{background:#C5A059;color:#FFFFFF!important;border-color:#C5A059}

/* ---------- OSIOT & OTSIKOT ---------- */
#palvelut,#yritys,#yhteys,#pf-osio-1,#pf-osio-2,#pf-osio-3{background:#FFFFFF}
#pf-osio-harmaa,#pf-osio-harmaa-2{background:#F9FAF7;border-top:1px solid #E2E6DF;border-bottom:1px solid #E2E6DF}
.pf-kicker .elementor-heading-title{font-size:12px!important;font-weight:600!important;letter-spacing:.14em!important;text-transform:uppercase;color:#A6823B!important;line-height:1.72!important}
.pf-kicker{margin-bottom:12px!important}
.pf-h2 .elementor-heading-title{font-size:clamp(25px,2.8vw,38px)!important;font-weight:600!important;line-height:1.22!important;letter-spacing:-.015em!important;color:#0E382B!important}
.pf-korostus{color:#0E382B}
#pf-otsikko-1,#pf-otsikko-2,#pf-otsikko-3{max-width:820px!important;width:100%!important;margin:0 auto 52px!important}
#pf-otsikko-1 .pf-h2,#pf-otsikko-2 .pf-h2,#pf-otsikko-3 .pf-h2{margin-bottom:14px!important}
#pf-otsikko-1 .elementor-widget,#pf-otsikko-2 .elementor-widget,#pf-otsikko-3 .elementor-widget,
#pf-otsikko-1 .elementor-heading-title,#pf-otsikko-2 .elementor-heading-title,#pf-otsikko-3 .elementor-heading-title,
#pf-otsikko-1 p,#pf-otsikko-2 p,#pf-otsikko-3 p{text-align:center}
.pf-johdanto p{font-size:16.5px!important;color:#506056!important;line-height:1.7!important;margin:0}
.pf-osio-johdanto p{font-size:16px!important;color:#506056!important;line-height:1.7!important;margin:0}

/* ---------- NAPIT ---------- */
.pf-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Poppins',sans-serif;font-size:15px;font-weight:500;padding:14px 32px;border-radius:6px;border:1.5px solid transparent;line-height:1.3;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.pf-btn .elementor-button-content-wrapper{gap:8px}
.pf-btn .elementor-button-icon{margin:0}
.pf-btn-kulta .elementor-button{background-color:#C5A059!important;color:#FFFFFF!important;border-color:#C5A059!important}
.pf-btn-kulta .elementor-button:hover{background-color:#A6823B!important;border-color:#A6823B!important}
.pf-btn-reuna .elementor-button{background-color:transparent!important;color:#FFFFFF!important;border-color:#FFFFFF!important}
.pf-btn-reuna .elementor-button:hover{background-color:#FFFFFF!important;color:#0E382B!important}
.pf-btn-vihrea .elementor-button{background-color:#0E382B!important;color:#FFFFFF!important;border-color:#0E382B!important}
.pf-btn-vihrea .elementor-button:hover{background-color:#174D3C!important;border-color:#174D3C!important}

/* ---------- HERO (etusivu) ---------- */
#pf-hero{background-image:linear-gradient(to top,rgba(14,56,43,.75) 0%,rgba(14,56,43,.25) 45%,transparent 75%),linear-gradient(to right,rgba(9,16,12,.85) 0%,rgba(9,16,12,.60) 48%,rgba(9,16,12,.18) 78%,transparent 100%),url('https://www.pinta-fix.fi/wp-content/uploads/2026/09/pexels-photo-26747980-scaled.jpeg');background-size:cover;background-position:center 40%;background-repeat:no-repeat;align-items:stretch;gap:0!important}
#pf-hero-in{align-items:flex-start!important}
#pf-hero-in>.e-con-inner{align-items:flex-start;max-width:1380px}
#pf-hero-in .elementor-widget:not(.elementor-widget-button){max-width:840px;width:100%}
#pf-hero-in .pf-kicker .elementor-heading-title{color:#A6823B!important}
.pf-hero-otsikko .elementor-heading-title{color:#FFFFFF!important;font-size:clamp(36px,4.6vw,58px)!important;font-weight:600!important;line-height:1.2!important;letter-spacing:-.015em!important}
.pf-hero-otsikko{margin-bottom:22px!important}
.pf-hero-korostus{color:#D4AF37!important}
.pf-hero-kuvaus{max-width:702px!important;margin-bottom:17.6px!important}
.pf-hero-kuvaus p{font-size:18px!important;color:rgba(255,255,255,.94)!important;line-height:1.75!important;margin:0}
#pf-hero-napit{margin-top:34px!important;width:auto!important;flex-wrap:wrap!important}
#pf-hero-napit>.e-con,#pf-cta-napit>.e-con,#pf-alasivu-napit>.e-con{width:auto!important;flex:0 0 auto!important;padding:0!important}

/* ---------- ALASIVUN HERO ---------- */
#pf-alasivu-hero{background-image:linear-gradient(to top,rgba(14,56,43,.75) 0%,rgba(14,56,43,.25) 45%,transparent 75%),linear-gradient(to right,rgba(9,16,12,.85) 0%,rgba(9,16,12,.60) 50%,rgba(9,16,12,.20) 80%,transparent 100%),url('https://www.pinta-fix.fi/wp-content/uploads/2026/09/pexels-photo-26747980-scaled.jpeg');background-size:cover;background-position:center 35%;background-repeat:no-repeat;gap:0!important}
#pf-alasivu-in>.e-con-inner{align-items:flex-start;max-width:1380px}
.pf-muruleipa{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;font-size:13px;color:rgba(255,255,255,.7);font-weight:400}
.pf-muruleipa a{color:rgba(255,255,255,.7);text-decoration:none}
.pf-muruleipa a:hover{color:#D4AF37}
.pf-muruleipa [aria-current]{color:#FFFFFF}
.pf-alasivu-h1 .elementor-heading-title{color:#FFFFFF!important;font-size:clamp(32px,4.2vw,54px)!important;font-weight:600!important;line-height:1.22!important;letter-spacing:-.015em!important}
.pf-alasivu-h1{margin-bottom:16px!important;max-width:900px!important}
.pf-alasivu-kicker .elementor-heading-title{color:#E8CA8A!important}
.pf-alasivu-johdanto{max-width:64ch!important}
.pf-alasivu-johdanto p{font-size:17.5px!important;color:rgba(255,255,255,.94)!important;line-height:1.7!important;margin:0}

/* ---------- STATS ---------- */
#pf-stats{position:relative;z-index:5;margin-top:-50px!important;margin-bottom:20px!important}
#pf-stats-grid{background:#FFFFFF;border:1px solid #E2E6DF;border-radius:14px}
#pf-stats-grid>.e-con{width:auto!important;flex:1 1 0!important;min-width:0}
#pf-stat-1,#pf-stat-2,#pf-stat-3{border-right:1px solid #E2E6DF}
.pf-stat-luku .elementor-heading-title{font-size:clamp(32px,3.4vw,44px)!important;font-weight:700!important;color:#0E382B!important;line-height:1!important;letter-spacing:-.02em!important}
.pf-stat-luku{margin-bottom:6px!important}
.pf-stat-teksti p{font-size:14px!important;font-weight:500!important;color:#506056!important;line-height:1.45!important;margin:0}

/* ---------- PALVELUKORTIT ---------- */
#pf-kortit{margin-bottom:40px!important}
#pf-kortit>.e-con,#pf-lisat>.e-con{width:auto!important;flex:1 1 0!important;min-width:0}
#pf-kortti-1,#pf-kortti-2,#pf-kortti-3{background:#FFFFFF;border:1px solid #E2E6DF;border-radius:14px;transition:border-color .2s ease}
#pf-kortti-1:hover,#pf-kortti-2:hover,#pf-kortti-3:hover{border-color:#0E382B}
.pf-kortti-kuva img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:10px;display:block}
#pf-kortti-sis-1,#pf-kortti-sis-2,#pf-kortti-sis-3{flex:1 1 auto!important}
.pf-kortti-h3 .elementor-heading-title{font-size:21px!important;font-weight:600!important;color:#0E382B!important;text-align:left}
.pf-kortti-h3{margin-bottom:10px!important}
.pf-kortti-p p{font-size:14.5px!important;color:#506056!important;line-height:1.65!important;margin:0}
.pf-kortti-linkki{margin-top:auto!important}
.pf-kortti-linkki p{margin:0}
.pf-linkki{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;color:#0E382B!important;margin-top:14px;padding:4px 0;text-decoration:none}
.pf-linkki::after{content:"\2192";transition:transform .22s cubic-bezier(.16,1,.3,1)}
.pf-linkki:hover{color:#A6823B!important}
.pf-linkki:hover::after{transform:translateX(6px)}

/* ---------- LISÄPALVELUT ---------- */
#pf-lisa-1,#pf-lisa-2,#pf-lisa-3{background:#F9FAF7;border:1px solid #E2E6DF;border-radius:10px;transition:all .2s ease-in-out}
#pf-lisa-1:hover,#pf-lisa-2:hover,#pf-lisa-3:hover{background:#FFFFFF;border-color:#CCD3C8}
.pf-lisa-in{display:flex;gap:18px}
.pf-lisa-ikoni{width:46px;height:46px;border-radius:6px;background:#FFFFFF;border:1px solid #E2E6DF;display:flex;align-items:center;justify-content:center;flex:none;color:#0E382B}
.pf-lisa-ikoni svg{width:24px;height:24px}
.pf-lisa-in h4{font-size:16px;margin:0 0 4px;font-weight:600;color:#0E382B;font-family:'Poppins',sans-serif;line-height:1.22;letter-spacing:-.015em}
.pf-lisa-in p{font-size:14px;color:#506056;line-height:1.55;margin:0 0 4px}
.pf-pikkulinkki{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13px;color:#0E382B;margin-top:8px;text-decoration:none}
.pf-pikkulinkki:hover{color:#A6823B}

/* ---------- MIKSI ---------- */
#pf-miksi-grid>.e-con{width:auto!important;flex:1 1 0!important;min-width:0}
#pf-miksi-grid>#pf-miksi-kuva-alue{flex-grow:.95!important;padding:0!important;align-items:stretch!important;gap:0!important}
#pf-miksi-grid>#pf-miksi-teksti{flex-grow:1.05!important;gap:0!important}
#pf-miksi-kuva-alue .elementor-widget-html{position:relative;padding:0 30px 30px 0!important;width:100%!important}
.pf-miksi-kehys{position:relative;border-radius:14px;overflow:hidden;width:100%}
.pf-miksi-kehys img{width:100%;height:auto;aspect-ratio:4/4.2;object-fit:cover;display:block}
.pf-miksi-badge{position:absolute;right:0;bottom:0;background:#0E382B;color:#FFFFFF;padding:26px 32px;border-radius:12px;display:flex;flex-direction:column;z-index:3}
.pf-miksi-badge strong{font-size:38px;font-weight:700;color:#FFFFFF;line-height:1;margin-bottom:4px}
.pf-miksi-badge span{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.pf-miksi-h2{margin-bottom:30px!important}
.pf-miksi-kohdat{display:grid;gap:26px}
.pf-miksi-kohta{display:flex;gap:20px;align-items:flex-start}
.pf-miksi-ikoni{width:48px;height:48px;border-radius:50%;background:#C5A059;display:flex;align-items:center;justify-content:center;flex:none;color:#0E382B}
.pf-miksi-ikoni svg{width:22px;height:22px;stroke:#0E382B;stroke-width:2.2}
.pf-miksi-kohta h3{font-size:18px;font-weight:600;margin:0 0 4px;color:#0E382B;font-family:'Poppins',sans-serif;line-height:1.22;letter-spacing:-.015em}
.pf-miksi-kohta p{font-size:14px;color:#506056;line-height:1.6;margin:0}

/* ---------- KAKSI PALSTAA (alasivu) ---------- */
#pf-kaksi-palstaa>.e-con{width:auto!important;flex:1 1 0!important;min-width:0}
.pf-palsta-kuva img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid #E2E6DF;display:block;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.pf-taulukko{border-top:1px solid #E2E6DF;margin:24px 0 0}
.pf-taulukko .pf-rivi{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid #E2E6DF}
.pf-taulukko dt{font-size:14px;color:#506056;margin:0}
.pf-taulukko dd{font-size:14.5px;font-weight:600;color:#0E382B;text-align:right;margin:0}

/* ---------- TYÖVAIHEET ---------- */
.pf-vaiheet{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.pf-vaihe{background:#FFFFFF;border:1px solid #E2E6DF;border-radius:10px;padding:32px 26px;transition:all .2s ease-in-out}
.pf-vaihe:hover{border-color:#CCD3C8}
.pf-vaihe-nro{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:6px;background:rgba(197,160,89,.15);border:1px solid #C5A059;font-size:14px;font-weight:700;line-height:1;color:#A6823B;margin-bottom:16px}
.pf-vaihe h3{margin:0 0 8px;font-size:18.5px;font-weight:600;color:#0E382B;font-family:'Poppins',sans-serif;line-height:1.22;letter-spacing:-.015em}
.pf-vaihe p{font-size:14.5px;color:#506056;line-height:1.6;margin:0}

/* ---------- MERKKIRIVI ---------- */
.pf-merkit{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;max-width:900px;margin:0 auto}
.pf-merkki{display:inline-flex;align-items:center;color:#0E382B;background:#FFFFFF;border:1px solid #E2E6DF;border-radius:9999px;font-size:13px;font-weight:500;padding:8px 18px}

/* ---------- YHTEYSRIVIT (alasivu) ---------- */
.pf-yhteys-rivi{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid #E2E6DF}
.pf-yhteys-rivi:first-of-type{border-top:1px solid #E2E6DF}
.pf-yhteys-rivi svg{width:20px;height:20px;color:#0E382B;flex:none;margin-top:3px}
.pf-yhteys-rivi dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#7A8A80;margin-bottom:2px;font-weight:600}
.pf-yhteys-rivi dd{font-size:15.5px;font-weight:600;color:#0E382B;margin:0}
.pf-yhteys-rivi dd a{color:#0E382B;text-decoration:none}
.pf-yhteys-rivi dd a:hover{color:#A6823B}
.pf-aputeksti{font-size:13px;color:#7A8A80;line-height:1.5;margin:26px 0 0}

/* ---------- CTA ---------- */
#pf-cta{background-image:linear-gradient(to top,rgba(14,56,43,.88) 0%,rgba(14,56,43,.40) 50%,transparent 100%),linear-gradient(rgba(10,18,14,.72),rgba(10,18,14,.72)),url('https://www.pinta-fix.fi/wp-content/uploads/2026/09/pexels-photo-26747980-scaled.jpeg');background-size:cover;background-position:center;background-repeat:no-repeat;text-align:center;gap:0!important}
#pf-cta-in>.e-con-inner{align-items:center}
.pf-cta-h2{max-width:780px!important;width:100%!important;margin-bottom:16px!important}
.pf-cta-h2 .elementor-heading-title{color:#FFFFFF!important;font-size:clamp(26px,3.2vw,42px)!important;font-weight:600!important;line-height:1.22!important}
.pf-cta-p{max-width:780px!important;width:100%!important;margin-bottom:32px!important}
.pf-cta-p p{color:rgba(255,255,255,.94)!important;font-size:17px!important;line-height:1.7!important;margin:0}
#pf-cta-napit{width:auto!important;flex-wrap:wrap!important}

/* ---------- YHTEYS (etusivu) ---------- */
#pf-yhteys-grid>.e-con{width:auto!important;flex:1 1 0!important;min-width:0}
#pf-yhteys-grid>#pf-yhteys-vasen{flex-grow:.95!important}
#pf-yhteys-grid>#pf-yhteys-oikea{flex-grow:1.05!important}
.pf-johdanto-vasen{font-size:16px;color:#506056;line-height:1.7;margin:0}
.pf-pisteet{display:grid;gap:12px;list-style:none;margin:24px 0 0;padding:0}
.pf-pisteet li{display:flex;align-items:flex-start;gap:12px;font-size:15px;color:#2B3830}
.pf-pisteet li::before{content:"\2713";font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:rgba(14,56,43,.07);color:#0E382B;flex:none;margin-top:4px}
.pf-pikakortti{display:grid;gap:20px;margin-top:30px;background:#F9FAF7;border:1px solid #E2E6DF;border-radius:10px;padding:24px 26px}
.pf-pikkutitteli{display:block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7A8A80;margin-bottom:2px}
.pf-puhelin-iso{font-size:22px;font-weight:700;color:#0E382B;display:block;text-decoration:none}
.pf-puh-pieni{font-size:18px}
.pf-puhelin-iso:hover{color:#A6823B}
.pf-sposti{color:#0E382B;font-weight:600;font-size:15px;text-decoration:none}
.pf-sposti:hover{color:#A6823B}
.pf-osoite{font-style:normal;font-size:15px;font-weight:600;color:#0E382B}
.pf-kartta{width:100%;min-height:280px;border:1px solid #E2E6DF;display:block;border-radius:12px;margin-top:24px}
.pf-lomake-h2{margin-bottom:24px!important}

/* ---------- GRAVITY FORMS ---------- */
#pf-yhteys-oikea{align-items:stretch!important}
#pf-yhteys-oikea .elementor-widget-shortcode,.pf-lomake .elementor-shortcode{width:100%!important}
.pf-lomake .gform_wrapper.gform-theme{--gf-color-primary:#0E382B!important;--gf-color-primary-rgb:14,56,43!important;--gf-color-primary-contrast:#FFFFFF!important;--gf-color-primary-contrast-rgb:255,255,255!important;--gf-color-primary-darker:#072419!important;--gf-color-primary-lighter:#174D3C!important;--gf-color-out-ctrl-light:#CCD3C8!important;--gf-color-out-ctrl-light-darker:#B9C2B4!important;--gf-color-out-ctrl-dark:#506056!important;--gf-color-out-ctrl-dark-darker:#2B3830!important;--gf-color-in-ctrl:#F9FAF7!important;--gf-color-in-ctrl-rgb:249,250,247!important;--gf-color-in-ctrl-contrast:#2B3830!important;--gf-color-in-ctrl-dark:#2B3830!important;--gf-color-in-ctrl-light:#E2E6DF!important;--gf-radius:6px!important;--gf-ctrl-label-color-primary:#0E382B!important;--gf-ctrl-btn-font-size:14.5px!important;font-family:'Poppins',sans-serif}
.pf-lomake .gform_wrapper{background:#FFFFFF;border:1px solid #E2E6DF;border-radius:14px;padding:38px 36px}
.pf-lomake .gform_heading{margin:0 0 22px;padding:0}
.pf-lomake .gform_title{font-family:'Poppins',sans-serif;font-size:18.5px!important;font-weight:600!important;color:#0E382B!important;line-height:1.72!important;letter-spacing:-.015em;margin:0;padding:0 0 12px;border-bottom:1px solid #E2E6DF}
.pf-lomake .gform_description{display:block;font-size:14px;color:#506056;line-height:1.6;margin-top:10px}
.pf-lomake .gform_required_legend{display:none}
.pf-lomake .gform_fields{row-gap:22px!important;column-gap:16px!important}
.pf-lomake .gfield{margin:0}
.pf-lomake .gsection{border-bottom:1px solid #E2E6DF;padding:0 0 12px;margin:0 0 -4px}
.pf-lomake .gsection_title{font-family:'Poppins',sans-serif;font-size:18.5px!important;font-weight:600!important;color:#0E382B!important;line-height:1.72!important;letter-spacing:-.015em;margin:0}
.pf-lomake .gfield_label{font-family:'Poppins',sans-serif;font-size:13.5px!important;font-weight:600!important;color:#0E382B!important;line-height:23px!important;margin:0 0 6px!important;display:block}
.pf-lomake .gfield_required{color:#7A8A80!important;font-weight:400;font-size:12.5px;margin-left:2px}
.pf-lomake .gfield_description{font-size:13px;color:#7A8A80;line-height:1.5;padding-top:6px}
.pf-lomake .gform_wrapper input[type=text],.pf-lomake .gform_wrapper input[type=email],.pf-lomake .gform_wrapper input[type=tel],.pf-lomake .gform_wrapper input[type=url],.pf-lomake .gform_wrapper input[type=number],.pf-lomake .gform_wrapper select,.pf-lomake .gform_wrapper textarea{font-family:'Poppins',sans-serif!important;font-size:14.5px!important;color:#2B3830!important;padding:13px 15px!important;border:1px solid #CCD3C8!important;border-radius:6px!important;background-color:#F9FAF7!important;width:100%;line-height:1.4!important;box-shadow:none;transition:border-color .2s ease,background-color .2s ease}
.pf-lomake .gform_wrapper input[type=text],.pf-lomake .gform_wrapper input[type=email],.pf-lomake .gform_wrapper input[type=tel],.pf-lomake .gform_wrapper input[type=url],.pf-lomake .gform_wrapper input[type=number],.pf-lomake .gform_wrapper select{height:50px!important}
.pf-lomake .gform_wrapper textarea{min-height:120px!important;height:120px!important;resize:vertical}
.pf-lomake .gform_wrapper input:focus,.pf-lomake .gform_wrapper select:focus,.pf-lomake .gform_wrapper textarea:focus{outline:0;border-color:#0E382B!important;background-color:#FFFFFF!important;box-shadow:none!important}
.pf-lomake .gform_wrapper input::placeholder,.pf-lomake .gform_wrapper textarea::placeholder{color:#7A8A80;opacity:1}
.pf-lomake .gform_wrapper select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E382B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:42px!important}
.pf-lomake .gform_wrapper input[type=checkbox],.pf-lomake .gform_wrapper input[type=radio]{width:17px;height:17px;accent-color:#0E382B;margin-top:3px}
.pf-lomake .gchoice label{font-size:13.5px;font-weight:400;color:#506056;line-height:23px}
.pf-lomake .gform_footer{margin:22px 0 0!important;padding:0!important}
.pf-lomake .gform_wrapper .gform_footer button.gform_button,.pf-lomake .gform_wrapper .gform_footer input.gform_button,.pf-lomake .gform_wrapper button.gform_button,.pf-lomake .gform_wrapper .gform_button{background-color:#0E382B!important;background-image:none!important;color:#FFFFFF!important;border:1.5px solid #0E382B!important;border-radius:6px!important;font-family:'Poppins',sans-serif!important;font-size:14.5px!important;font-weight:500!important;padding:14px 32px!important;line-height:1.3!important;height:auto!important;width:auto!important;min-height:0!important;box-shadow:none!important;cursor:pointer;transition:background-color .18s ease,border-color .18s ease}
.pf-lomake .gform_wrapper .gform_button:hover{background-color:#174D3C!important;border-color:#174D3C!important;color:#FFFFFF!important}
.pf-lomake .gform_wrapper .gform_button:focus-visible{outline:3px solid #C5A059!important;outline-offset:3px}
.pf-lomake .gfield_error input,.pf-lomake .gfield_error select,.pf-lomake .gfield_error textarea{border-color:#D93829!important;background-color:#FFFFFF!important}
.pf-lomake .gfield_validation_message,.pf-lomake .validation_message{color:#D93829!important;font-size:13px;font-weight:500;background:none!important;border:0!important;padding:6px 0 0!important;margin:0}
.pf-lomake .gform_validation_errors{background:rgba(217,56,41,.06)!important;border:1px solid #D93829!important;border-radius:6px!important;box-shadow:none!important;padding:14px 16px!important;margin:0 0 22px!important}
.pf-lomake .gform_validation_errors>h2{color:#D93829!important;font-size:14.5px!important;font-weight:600;margin:0;line-height:1.5}
.gform_confirmation_message{border-left:4px solid #0E382B;padding:20px 24px;background:rgba(14,56,43,.07);border-radius:0 10px 10px 0;font-size:15px;line-height:1.72;color:#2B3830;font-family:'Poppins',sans-serif}
.pf-lomake .gfield--type-turnstile{margin-top:2px}

/* ---------- FOOTER ---------- */
.pf-alatunniste{background:#072419;color:rgba(255,255,255,.85);padding:56px 0 32px;border-top:1px solid rgba(197,160,89,.2)}
.pf-kontti-f{width:100%;max-width:1380px;margin:0 auto;padding:0 24px}
@media(min-width:768px){.pf-kontti-f{padding:0 36px}}
.pf-footer-sisalto{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.1)}
.pf-brand{display:flex;flex-direction:column;gap:12px}
.pf-alatunniste a{text-decoration:none;transition:all .2s ease-in-out}
.pf-osoite-f{font-size:14px;color:rgba(255,255,255,.7)!important;line-height:1.6;margin:0}
.pf-puh-f{color:#FFFFFF!important;font-weight:600}
.pf-puh-f:hover{color:#E8CA8A!important}
.pf-linkit-f{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.pf-linkit-f a:not(.pf-nappi-f){font-size:15px;font-weight:500;color:rgba(255,255,255,.82)!important}
.pf-linkit-f a:not(.pf-nappi-f):hover{color:#E8CA8A!important}
.pf-nappi-f{display:inline-flex;align-items:center;justify-content:center;padding:10px 22px;font-size:14px;font-weight:500;background:#C5A059;color:#FFFFFF!important;border:1.5px solid #C5A059;border-radius:6px}
.pf-nappi-f:hover{background:#A6823B;border-color:#A6823B}
.pf-ala-f{padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px;color:rgba(255,255,255,.5)}
.pf-sertifikaatit{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.pf-sert{display:inline-flex;align-items:center;justify-content:center;padding:2px 0;transition:transform .2s ease}
.pf-sert:hover{transform:translateY(-2px) scale(1.03)}
.pf-sert img{height:52px;max-height:52px;max-width:190px;width:auto;object-fit:contain;display:block;filter:drop-shadow(0 2px 8px rgba(0,0,0,.35))}

/* ---------- KONTIN LEVEYS ---------- */
#palvelut>.e-con-inner,#yritys>.e-con-inner,#yhteys>.e-con-inner,#pf-osio-1>.e-con-inner,#pf-osio-2>.e-con-inner,#pf-osio-3>.e-con-inner,#pf-osio-harmaa>.e-con-inner,#pf-osio-harmaa-2>.e-con-inner,#pf-stats>.e-con-inner,#pf-hero-in>.e-con-inner,#pf-cta-in>.e-con-inner,#pf-alasivu-in>.e-con-inner{max-width:1308px!important}

/* ==========================================================================
   RESPONSIIVISUUS – prototyypin katkot 1150 / 960 / 640
   ========================================================================== */
@media(max-width:1150px){
#pf-kortit,#pf-lisat,#pf-stats-grid{flex-wrap:wrap!important}
.pf-vaiheet{grid-template-columns:repeat(2,1fr)}
#pf-kortit>.e-con,#pf-lisat>.e-con{flex:1 1 calc(50% - 16px)!important;min-width:calc(50% - 16px)}
#pf-stats-grid>.e-con{flex:1 1 calc(50% - 12px)!important;min-width:calc(50% - 12px)}
#pf-stat-1,#pf-stat-2,#pf-stat-3{border-right:0}
#pf-miksi-grid,#pf-yhteys-grid,#pf-kaksi-palstaa{flex-direction:column!important;gap:48px!important}
#pf-miksi-grid>.e-con,#pf-yhteys-grid>.e-con,#pf-kaksi-palstaa>.e-con{width:100%!important;flex:1 1 auto!important}
#pf-miksi-kuva-alue{max-width:540px}
#pf-miksi-kuva-alue .elementor-widget-html{padding:0!important}
.pf-miksi-badge{right:16px;bottom:16px}
}
@media(max-width:960px){
.pf-navi,.pf-puhelin,.pf-hdr-btn{display:none}
.pf-valikko-btn{display:flex}
.pf-mobiilipalkki{display:flex}
body{padding-bottom:70px}
#pf-hero{min-height:75vh!important;padding:80px 0 110px!important}
#pf-alasivu-hero{min-height:52vh!important;padding:80px 0 100px!important}
#pf-stats{margin-top:-30px!important}
#pf-stats-grid{padding:22px 20px!important;row-gap:20px!important;column-gap:20px!important}
#palvelut,#yritys,#yhteys,#pf-osio-1,#pf-osio-2,#pf-osio-3,#pf-osio-harmaa,#pf-osio-harmaa-2{padding:0!important}
#palvelut>.e-con-inner,#yritys>.e-con-inner,#yhteys>.e-con-inner,#pf-osio-1>.e-con-inner,#pf-osio-2>.e-con-inner,#pf-osio-3>.e-con-inner,#pf-osio-harmaa>.e-con-inner,#pf-osio-harmaa-2>.e-con-inner{padding:64px 36px!important}
#pf-otsikko-1,#pf-otsikko-2,#pf-otsikko-3{max-width:none!important;margin:0 0 36px!important;align-items:stretch!important}
#pf-otsikko-1 .elementor-widget,#pf-otsikko-2 .elementor-widget,#pf-otsikko-3 .elementor-widget,
#pf-otsikko-1 .elementor-heading-title,#pf-otsikko-2 .elementor-heading-title,#pf-otsikko-3 .elementor-heading-title,
#pf-otsikko-1 p,#pf-otsikko-2 p,#pf-otsikko-3 p{text-align:left!important}
}
@media(max-width:640px){
.pf-hdr .pf-kontti{padding:0 18px}
.pf-logo svg{height:32px;width:32px}
.pf-logo-paa{font-size:19px}
.pf-logo-kevyt{font-size:10px}
.pf-kontti-f{padding:0 18px}
#palvelut>.e-con-inner,#yritys>.e-con-inner,#yhteys>.e-con-inner,#pf-osio-1>.e-con-inner,#pf-osio-2>.e-con-inner,#pf-osio-3>.e-con-inner,#pf-osio-harmaa>.e-con-inner,#pf-osio-harmaa-2>.e-con-inner{padding:50px 18px!important}
#pf-stats{padding:0!important}
#pf-stats>.e-con-inner{padding:0 18px!important}
#pf-hero{min-height:72vh!important;padding:70px 0 100px!important}
#pf-alasivu-hero{min-height:55vh!important;padding:72px 0 92px!important}
#pf-hero-in,#pf-cta-in,#pf-alasivu-in{padding:0!important}
#pf-hero-in>.e-con-inner,#pf-cta-in>.e-con-inner,#pf-alasivu-in>.e-con-inner{padding:0 18px!important}
#pf-cta{padding:52px 0!important}
.pf-hero-otsikko .elementor-heading-title{font-size:clamp(28px,7.8vw,36px)!important}
.pf-hero-kuvaus p{font-size:15.5px!important;line-height:1.6!important}
.pf-alasivu-johdanto p{font-size:15.5px!important;line-height:1.6!important}
#pf-hero-napit{gap:10px!important}
.pf-btn .elementor-button{padding:10px 18px;font-size:13.5px}
#pf-stats-grid{row-gap:16px!important;column-gap:16px!important;padding:18px 16px!important}
#pf-stats-grid>.e-con{flex:1 1 calc(50% - 8px)!important;min-width:calc(50% - 8px);padding-right:0!important}
.pf-stat-luku .elementor-heading-title{font-size:28px!important}
.pf-stat-teksti p{font-size:12px!important}
#pf-kortit,#pf-lisat{flex-direction:column!important;row-gap:20px!important}
#pf-kortit>.e-con,#pf-lisat>.e-con{flex:1 1 auto!important;min-width:0!important;width:100%!important}
#pf-kortit{margin-bottom:20px!important}
.pf-vaiheet{grid-template-columns:1fr;gap:20px}
#pf-miksi-grid,#pf-yhteys-grid,#pf-kaksi-palstaa{gap:28px!important}
.pf-miksi-badge{position:static;margin-top:14px;align-self:flex-start}
.pf-lomake .gform_wrapper{padding:24px 18px;border-radius:12px}
.pf-lomake .gform_fields{column-gap:0!important}
.pf-lomake .gform_wrapper input,.pf-lomake .gform_wrapper select,.pf-lomake .gform_wrapper textarea{font-size:16px!important}
.pf-lomake .gform_wrapper .gform_button{width:100%!important}
.pf-cta-h2 .elementor-heading-title{font-size:26px!important}
#pf-cta-napit{gap:10px!important}
.pf-footer-sisalto{flex-direction:column;align-items:flex-start;gap:28px}
.pf-linkit-f{flex-direction:column;align-items:flex-start;gap:14px}
.pf-sertifikaatit{align-items:flex-start;margin:12px 0;gap:14px}
.pf-sert img{height:44px;max-height:44px;max-width:165px}
}/* End custom CSS */