:root{--blue:#923487;--pink:#ff81b5;--yellow:#ffe348;--ink:#32143d}
.nav{height:112px;border-bottom:0;box-shadow:0 4px 20px #32143d09;gap:26px}
.nav::after{content:"";position:absolute;bottom:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#a13d93,#f47920,#ffd943,#94cc40,#20bfc4,#6550db,#f272ae)}
.brand{padding:24px 24px 8px 0;flex-shrink:0}
.brand .flow-wordmark{font-family:Manrope,Arial,sans-serif;font-size:clamp(26px,3vw,40px);font-weight:800;letter-spacing:-.075em;line-height:1.2;color:#9e398f;white-space:nowrap}
.brand .logo-s{display:inline-block;position:relative;color:inherit}
.brand .brand-upgrade{font-size:10px;letter-spacing:.07em;margin-top:5px;color:#683264!important}
.balloon-butterfly{position:absolute!important;width:58px;height:55px;left:-13px;bottom:38%;overflow:visible;transform:rotate(12deg);filter:drop-shadow(0 2px 1px #32143d25);pointer-events:none}
.balloon-butterfly .wing{transform-box:fill-box;transform-origin:center;animation:form-wing 1.5s both}
.balloon-butterfly .wing-two{animation-delay:.2s}.balloon-butterfly .wing-three{animation-delay:.4s}.balloon-butterfly .wing-four{animation-delay:.6s}
@keyframes form-wing{0%{opacity:0;transform:scale(.08) rotate(-35deg)}60%{opacity:1;transform:scale(1.1) rotate(4deg)}100%{opacity:1;transform:none}}
.hero{background:radial-gradient(ellipse at 10% 95%,#ffbbdd80,transparent 48%),radial-gradient(ellipse at 100% 0%,#e0fbae,transparent 55%),#fff9e8}
.hero h1 em{color:#a13d93}.hero-visual{border-radius:120px 120px 30px 30px;box-shadow:16px 16px 0 #f47920;height:490px}
.hero-visual img{object-fit:cover;object-position:center}.award{background:#94cc40;color:#32143d}
.ticker{background:linear-gradient(100deg,#973289,#572991);color:white}
.products{background:#fff}.product.blue{background:#93318a}.product.yellow{background:#ffde35}.product.pink{background:#ff90bd}
.product{transition:transform .3s,box-shadow .3s}.product:hover{transform:translateY(-7px);box-shadow:0 16px 32px #54215418}
.story{background:#e9f8ca}.services{background:linear-gradient(125deg,#ffd745,#ffae68 60%,#ffc0d7)}.about{background:#642467}.contact{background:linear-gradient(115deg,#ffabd2,#ffe24b 55%,#b7e777)}footer{background:#ecf6dc}
.flow-portfolio{padding:100px 5.5vw;background:#f7edff;scroll-margin-top:120px}
.portfolio-heading{max-width:680px;margin-bottom:42px}.portfolio-heading h2{font-size:clamp(2.8rem,5.2vw,5.5rem);letter-spacing:-.06em;line-height:1.03;margin:0}.portfolio-heading h2 em{font-family:'Playfair Display',serif;color:#a13d93}.portfolio-heading>p:last-child{font-size:1.1rem;max-width:560px;margin-top:24px}
.portfolio-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portfolio-photos figure{margin:0;background:white;padding:12px;border-radius:20px;box-shadow:0 8px 24px #6823630b}
.portfolio-photos figure:nth-child(4),.portfolio-photos figure:nth-child(5){grid-column:span 1}
.portfolio-photos img{display:block;width:100%;height:310px;object-fit:cover;border-radius:12px;transition:transform .5s}
.portfolio-photos figure:nth-child(3) img{object-position:center 35%}.portfolio-photos a{display:block;overflow:hidden;border-radius:12px}.portfolio-photos a:hover img{transform:scale(1.04)}
.portfolio-photos figcaption{padding:16px 6px 8px;font-weight:700;font-size:1rem}
.portfolio-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px}.portfolio-links a{color:#713066;font-weight:800}
.detail-hero .brand{margin:0}.detail-hero>img{max-height:650px;min-height:100%;object-fit:cover}
.detail-hero.blue-hero{background:#91378b}.detail-hero.pink-hero{background:#f8a6ce}
.button,.nav-cta{transition:transform .2s,box-shadow .2s}.button:hover,.nav-cta:hover{transform:translateY(-3px);box-shadow:0 7px 15px #32143d20}
.motion-ready{opacity:0;transform:translateY(25px);transition:opacity .65s ease,transform .65s ease}.motion-ready.is-visible{opacity:1;transform:none}
section[id]{scroll-margin-top:120px}:focus-visible{outline:3px solid #773176;outline-offset:5px}
@media(max-width:1000px){.nav{padding-inline:4vw;gap:16px}.nav nav{gap:14px}.nav nav a{font-size:14px}.brand .flow-wordmark{font-size:30px}.nav-cta{font-size:14px;padding:12px 16px}.portfolio-photos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.nav{height:108px;flex-wrap:wrap;align-content:center;gap:0 10px}.brand{padding:15px 15px 3px 0}.brand .flow-wordmark{font-size:27px}.brand .brand-upgrade{font-size:9px}.balloon-butterfly{width:48px;height:46px;left:-16px;bottom:75%}.nav nav{display:flex;order:3;width:100%;justify-content:space-between;margin-top:9px;margin-left:0}.nav nav a{font-size:13px}.nav-cta{padding:10px;font-size:12px}.hero-visual{height:370px;box-shadow:8px 8px 0 #f47920;margin-bottom:20px}.hero{padding-bottom:8px}.flow-portfolio{padding:70px 6vw}.portfolio-photos{gap:14px}.portfolio-photos img{height:230px}.portfolio-photos figcaption{font-size:14px;padding:12px 2px 5px}.portfolio-links{font-size:14px}.detail-hero>img{min-height:0;height:360px}.actions{flex-wrap:wrap;gap:10px}.hero h1{line-height:1}.micro,.eyebrow{font-size:12px}}
@media(max-width:440px){.portfolio-photos{grid-template-columns:1fr}.portfolio-photos img{height:310px}.nav-cta{font-size:11px}.brand .flow-wordmark{font-size:25px}}
.nav .brand{padding-top:30px;overflow:visible}
@media(max-width:760px){.balloon-butterfly{width:43px;height:41px;left:-9px;bottom:35%}.nav .brand{padding-top:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready{opacity:1;transform:none}}
