/*
Theme Name: Flatsome Child
Description: LAFORM — native Flatsome layouts; shared UI in assets/laform-ui.css
Template: flatsome
Version: 7.0.0
*/
/* Page patterns. Shared tokens/components: assets/laform-ui.css. */
.laform-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 45%,#fff9df 0,transparent 52%),var(--lf-cream)}
.laform-hero h1{font-size:clamp(46px,5.3vw,82px);line-height:1.23;margin:0 0 26px;letter-spacing:-.05em}
.laform-hero h1 em{font-style:normal;color:var(--lf-blue)}
.laform-hero .laform-lead{max-width:425px;color:var(--lf-muted);font-size:15px;line-height:1.95;margin-bottom:30px}
.laform-hero .laform-kicker{display:inline-block;padding:8px 13px;border:1px solid rgba(30,91,255,.15);background:#e9efff;border-radius:var(--lf-pill);font-size:9px;letter-spacing:.1em;margin-bottom:24px}
.laform-hero .laform-art{position:relative}
.laform-hero .laform-art:before{content:'';position:absolute;inset:10% 5%;background:var(--lf-yellow);border-radius:46% 54% 56% 44%;transform:rotate(-12deg);box-shadow:inset 0 2px 0 #ffffff70,0 16px 32px rgba(255,211,78,.12)}
.laform-hero .laform-art .img{transform:rotate(-5deg)}.laform-art .img-inner{transition:transform 350ms var(--lf-ease)}
.laform-art-caption{text-align:center;font-size:9px;letter-spacing:.13em;font-weight:700;margin:18px 0 0}
.laform-hero:after{content:'✳';position:absolute;right:5%;top:26px;font-size:64px;line-height:1;color:var(--lf-orange);transform:rotate(12deg);pointer-events:none}
.laform-strip{border-block:1px solid rgba(31,31,31,.08);box-shadow:0 4px 12px rgba(255,211,78,.07)}.laform-strip p{font-size:10px;font-weight:700;letter-spacing:.1em;margin:0}
.laform-section>.section-content>.row:first-child{margin-bottom:12px}
.laform-custom{border-radius:var(--lf-radius-lg);overflow:hidden;box-shadow:0 12px 30px rgba(30,91,255,.08);border:1px solid rgba(255,255,255,.15)}
.laform-custom h2{font-size:clamp(32px,4vw,52px);line-height:1.25;letter-spacing:-.055em}.laform-custom p{line-height:1.9}
.laform-custom .button{background:var(--lf-yellow);color:var(--lf-ink);box-shadow:0 4px 12px rgba(0,0,0,.05)}.laform-custom .button:hover{background:#ffe17d;color:var(--lf-ink)}
/* Flatsome .white uses !important for both colors. Override only this banner CTA. */
.laform-custom .button.white:not(.is-outline){background-color:var(--lf-yellow)!important;color:var(--lf-ink)!important}
.laform-custom .button.white:not(.is-outline):hover{background-color:#ffe17d!important}
.laform-custom .laform-pill{border-color:#ffffff50;background:#ffffff0d}
.laform-story .img-inner{border-radius:var(--lf-radius-lg);overflow:hidden;box-shadow:var(--lf-shadow)}.laform-story p:not(.laform-kicker){color:var(--lf-muted);font-size:15px;line-height:1.9}
.laform-process .col-inner{border-top:1px solid var(--lf-line);padding-top:24px}.laform-process h3{font-size:18px;letter-spacing:-.035em;margin:20px 0 12px}.laform-process p{font-size:13px;color:var(--lf-muted);line-height:1.85}
.laform-process strong.lf-no{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:#e9efff;color:var(--lf-blue);font-size:20px;letter-spacing:-.05em}
.laform-desk{background:#f7f8fa}
/* Motion is optional. The saved site switch wins over the OS preference. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 body:not(.laform-motion-off) .product-small.box:hover{transform:translate(-3px,-3px)}body:not(.laform-motion-off) .product-small.box:hover .box-image img{transform:scale(1.035)}
 body:not(.laform-motion-off) .laform-art:hover .img-inner{transform:rotate(3deg)}body:not(.laform-motion-off) .button:hover{transform:translate(-2px,-2px)}
}
@media(hover:hover) and (pointer:fine){
 .laform-motion-on .product-small.box:hover{transform:translate(-3px,-3px)}.laform-motion-on .product-small.box:hover .box-image img{transform:scale(1.035)}
 .laform-motion-on .laform-art:hover .img-inner{transform:rotate(3deg)}.laform-motion-on .button:hover{transform:translate(-2px,-2px)}
}
@media(prefers-reduced-motion:reduce),(hover:none){
 body:not(.laform-motion-on) .laform-hero [data-parallax],body:not(.laform-motion-on) .laform-custom [data-parallax],body:not(.laform-motion-on) .laform-story [data-parallax]{transform:none!important;opacity:1!important}
 body:not(.laform-motion-on) :is(.product-small.box,.product-small .box-image img,.laform-art .img-inner,.laform-category,.button){transition:none}
}
.laform-motion-off [data-parallax]{transform:none!important;opacity:1!important}
.laform-motion-off :is(.product-small.box,.product-small .box-image img,.laform-art .img-inner,.laform-category,.button){transition:none;transform:none!important}
@media(max-width:849px){.laform-hero h1{font-size:48px}.laform-hero .laform-art{max-width:460px;margin:auto}.laform-hero .laform-kicker{font-size:8px}.laform-custom{border-radius:24px}}
@media(max-width:549px){.laform-hero h1{font-size:42px;line-height:1.25}.laform-hero .laform-lead{font-size:14px;line-height:1.9}.laform-hero .laform-art{max-width:320px}.laform-hero:after{font-size:30px;top:12px;right:14px}.laform-hero .button{margin-bottom:14px}.laform-strip p{font-size:8px;letter-spacing:.015em}.laform-custom h2{font-size:32px}}


/* Wide storefront patterns: keep native Sections, Columns and Images editable. */
.laform-hero>.section-content>.row{min-height:560px}
.laform-hero .laform-art{max-width:580px;margin-inline:auto}
.laform-hero .laform-lead{max-width:500px;font-size:16px}
.laform-hero:after{font-size:48px}
.laform-strip{box-shadow:none;border:0}
.laform-strip p{font-size:11px;letter-spacing:.04em}
.laform-custom{border-radius:0;box-shadow:none;border:0}
.laform-story .img-inner{box-shadow:none}

/* Neo category block. The Image + Text + Button stay native UX Builder elements. */
.lf-category-section{background-color:var(--lf-cream);background-image:radial-gradient(#1e5bff16 1px,transparent 1px);background-size:18px 18px}
.lf-category-section .section-content>.row:first-child,.lf-neo-intro{
 position:relative;border:var(--lf-neo-border);border-radius:12px;background:var(--lf-cream);
 padding:28px 32px;box-shadow:2px 2px 0 rgba(31,31,31,.18),0 10px 20px rgba(31,31,31,.06);margin-bottom:36px;
}
.lf-category-section .section-content>.row:first-child>.col{flex-basis:100%;max-width:100%;padding:0}
.lf-category-section .section-content>.row:first-child .text{padding-right:90px}
.lf-category-section .section-content>.row:first-child .laform-kicker{margin-bottom:12px}
.lf-category-section .section-content>.row:first-child h2{margin-bottom:14px;font-weight:800}
.lf-category-section .section-content>.row:first-child p:last-child{margin-bottom:0}
.lf-category-section .section-content>.row:first-child .text>p:last-of-type{margin-bottom:0}
.lf-category-section .section-content>.row:first-child:after{
 content:'✳';position:absolute;right:28px;top:28px;color:var(--lf-orange);font-size:76px;line-height:1;
 text-shadow:1px 1px 0 rgba(31,31,31,.25);pointer-events:none;animation:lf-sticker-spin 24s linear infinite;animation-play-state:paused;
}
.lf-category-section .lf-category-photo{margin:0;border-bottom:var(--lf-neo-border)}
.lf-category-photo .img-inner{aspect-ratio:1/1;background:var(--lf-white);border-radius:0;overflow:hidden}
.lf-category-photo img{width:100%;height:100%;object-fit:contain}
.lf-category-section .laform-category{padding:18px 14px 8px;border:0;border-radius:0;box-shadow:none;background:transparent;height:auto;transform:none;transition:none}
.lf-category-section .laform-category .lf-no,.lf-category-section .laform-category p{display:none}
.lf-category-section .laform-category h3{font-size:16px;min-height:48px;margin:0;line-height:1.5;letter-spacing:-.025em;font-weight:700;color:var(--lf-ink)}
.lf-category-section .laform-category+.button.primary.is-link{position:static;align-self:flex-start;min-height:28px;margin:0 14px 16px;padding:0;font-size:11px;font-weight:700;color:var(--lf-ink);border:0;background:transparent;box-shadow:none;transform:none}
.lf-category-section .laform-category+.button.primary.is-link:after{content:'';position:absolute;inset:0;z-index:2}
.lf-category-section .col:nth-child(6n+1)>.col-inner:has(>.laform-category),.lf-category-section .col:nth-child(6n)>.col-inner:has(>.laform-category){background:var(--lf-blue)}
.lf-category-section .col:nth-child(6n+2)>.col-inner:has(>.laform-category){background:var(--lf-cream)}
.lf-category-section .col:nth-child(6n+3)>.col-inner:has(>.laform-category){background:var(--lf-yellow)}
.lf-category-section .col:nth-child(6n+4)>.col-inner:has(>.laform-category){background:var(--lf-orange)}
.lf-category-section .col:nth-child(6n+5)>.col-inner:has(>.laform-category){background:var(--lf-green)}
.lf-category-section .col:is(:nth-child(6n+1),:nth-child(6n)) .laform-category h3,.lf-category-section .col:is(:nth-child(6n+1),:nth-child(6n)) .laform-category+.button{color:white}
/* Static native strip is the fallback; JS enhances its labels into a seamless ticker. */
.laform-strip{border-block:var(--lf-neo-border);position:relative;overflow:hidden}
.laform-strip[data-lf-ticker] .section-content>.row{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;padding:0;margin:0}
.lf-ticker{overflow:hidden;width:100%;padding-block:8px}
.lf-ticker-track{display:flex;width:max-content;animation:lf-ticker-scroll 48s linear infinite;animation-play-state:paused}
.lf-ticker-group{display:flex;flex:none;min-width:100vw;gap:36px;align-items:center;justify-content:space-around;padding-inline:18px}
.lf-ticker-item{display:inline-flex;align-items:center;gap:24px;white-space:nowrap;font-size:14px;font-weight:800;letter-spacing:.04em;line-height:1.6}
.lf-ticker-mark{font-size:28px;color:var(--lf-blue);line-height:1}
.laform-motion-on .lf-ticker-track,.laform-motion-on .lf-category-section .section-content>.row:first-child:after{animation-play-state:running}
.laform-strip:hover .lf-ticker-track,.laform-strip:focus-within .lf-ticker-track{animation-play-state:paused}
@keyframes lf-ticker-scroll{to{transform:translateX(-50%)}}
@keyframes lf-sticker-spin{from{transform:rotate(-8deg)}to{transform:rotate(352deg)}}
@media(max-width:849px){
 .laform-hero>.section-content>.row{min-height:0}.laform-hero .laform-lead{font-size:15px}
 .lf-category-section .section-content>.row:first-child{width:calc(100% - 36px);padding:24px;margin-bottom:30px}
 .lf-category-section .laform-category h3{font-size:16px}
}
@media(max-width:549px){
 .laform-hero .laform-lead{font-size:14px}.laform-strip p{font-size:8px}
 .lf-category-section .section-content>.row:first-child{padding:22px 20px}
 .lf-category-section .section-content>.row:first-child .text{padding-right:28px}
 .lf-category-section .section-content>.row:first-child:after{font-size:34px;right:12px;top:20px}
 .lf-category-section .section-content>.row:first-child h2{font-size:30px;line-height:1.3}
 .lf-category-section .laform-category{padding:14px 10px 8px}
 .lf-category-section .laform-category h3{font-size:14px;min-height:63px}
 .lf-category-section .laform-category+.button.primary.is-link{margin-inline:10px;font-size:10px}
 .lf-ticker-item{font-size:11px;gap:18px}.lf-ticker-mark{font-size:23px}
}
