/* Pinturas Tetela — diseño responsivo de una sola página */
:root{--ink:#101d32;--ink-soft:#334158;--muted:#657083;--paper:#f8f7f3;--white:#fff;--blue:#355afa;--coral:#fd6953;--lime:#d7ed6b;--line:rgba(16,29,50,.13);--radius:26px;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
img,svg{display:block;max-width:100%}
::selection{background:#b5c3ff;color:var(--ink)}
:focus-visible{outline:3px solid #f56b4d;outline-offset:4px}
.container{width:min(100% - 96px,1412px);margin-inline:auto}
.section{position:relative}
.skip-link{position:fixed;z-index:200;left:18px;top:-80px;padding:12px 18px;background:var(--lime);color:var(--ink);font-weight:800;border-radius:8px}
.skip-link:focus{top:16px}
.topline{background:var(--ink);color:#fff;min-height:35px;font-size:10px;font-weight:800;letter-spacing:.15em}
.topline-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:35px}
.topline-inner>span:first-child{display:flex;align-items:center;gap:9px;white-space:nowrap}
.small-mark{display:inline-block;width:9px;height:9px;background:var(--coral);border-radius:50%}
.topline-message{opacity:.77}
.top-separator{margin:0 13px;color:var(--lime)}
.topline-phone{display:flex;align-items:center;gap:12px;white-space:nowrap}
.topline-phone svg{width:15px;height:15px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(248,247,243,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,29,50,.06);transition:box-shadow .3s ease,background .3s ease}
.site-header.scrolled{box-shadow:0 12px 34px rgba(13,29,52,.07)}
.header-inner{display:flex;align-items:center;gap:28px;min-height:92px}
.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}
.brand-icon{width:37px;height:39px;display:flex;align-items:center;gap:3px;transform:rotate(-13deg)}
.brand-icon>span{display:block;width:10px;border-radius:9px 9px 3px 3px;height:27px;background:var(--coral)}
.brand-icon>span:nth-child(2){height:38px;background:var(--blue)}
.brand-icon>span:nth-child(3){height:23px;background:#e3bb43}
.brand-wordmark{display:flex;flex-direction:column;line-height:.96;letter-spacing:.095em;font-size:12px;font-weight:800}
.brand-wordmark strong{display:block;margin-top:2px;font-size:24px;letter-spacing:-.06em;font-weight:900}
.brand-dot{color:var(--coral)}
.navigation{display:flex;gap:clamp(14px,1.7vw,32px);align-items:center;margin-inline:auto;white-space:nowrap}
.nav-link{position:relative;font-size:12px;font-weight:700;color:#39455a;transition:color .2s ease;padding:12px 0}
.nav-link::after{content:"";position:absolute;bottom:5px;left:0;right:100%;height:2px;background:var(--coral);transition:right .3s var(--ease)}
.nav-link:hover,.nav-link.active{color:var(--ink)}
.nav-link:hover::after,.nav-link.active::after{right:0}
.nav-contact-mobile{display:none}
.header-call{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--ink);border-radius:999px;padding:13px 17px;font-size:12px;font-weight:800;white-space:nowrap;transition:background .25s ease,color .25s ease}
.header-call svg{width:17px;height:17px}
.header-call:hover{background:var(--ink);color:white}
.menu-toggle{display:none;border:0;background:transparent;width:46px;height:46px;padding:12px;align-items:center;justify-content:center;flex-direction:column;gap:5px;border-radius:12px}
.menu-toggle span{width:23px;height:2px;border-radius:2px;background:var(--ink);transition:transform .2s,opacity .2s}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* HERO */
.hero{overflow:hidden;background:radial-gradient(ellipse at 72% 31%,rgba(225,231,253,.62),transparent 42%),var(--paper)}
.hero-grid{display:grid;grid-template-columns:53% 47%;min-height:630px;align-items:center;position:relative}
.hero-copy{position:relative;z-index:3;padding:70px 0 58px}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:11px;font-weight:900;letter-spacing:.15em;color:var(--ink)}
.eyebrow-line{width:31px;height:2px;background:var(--coral);display:block;flex-shrink:0}
.hero h1{font-size:clamp(76px,7.65vw,139px);line-height:.87;font-weight:900;letter-spacing:-.086em;margin:28px 0 30px;white-space:nowrap}
.hero h1 em{font-style:normal;color:var(--blue)}
.period{color:var(--coral)}
.hero-intro{font-size:clamp(16px,1.5vw,20px);line-height:1.6;max-width:500px;margin:0;color:var(--ink-soft);font-weight:500}
.hero-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:31px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:23px;min-height:56px;border:1px solid transparent;padding:15px 23px;font-size:13px;font-weight:800;border-radius:999px;transition:transform .25s var(--ease),background .25s ease,color .25s ease,box-shadow .25s ease;white-space:nowrap}
.btn svg{width:20px;height:20px;flex-shrink:0;transition:transform .25s var(--ease)}
.btn:hover{transform:translateY(-3px)}
.btn:hover svg{transform:translateX(4px)}
.btn-primary{background:var(--blue);color:white;box-shadow:0 14px 27px rgba(53,90,250,.18)}
.btn-primary:hover{background:#2449e4;box-shadow:0 20px 32px rgba(53,90,250,.23)}
.btn-outline{border-color:var(--ink);background:transparent;color:var(--ink)}
.btn-outline:hover{background:var(--ink);color:#fff}
.hero-detail{display:flex;align-items:center;gap:14px;margin-top:51px}
.hero-detail-symbol{display:flex;gap:5px;align-items:center}
.hero-detail-symbol span{width:15px;height:36px;display:block;background:var(--coral);border-radius:20px;transform:rotate(21deg)}
.hero-detail-symbol span:nth-child(2){background:#e4c450;transform:rotate(-17deg);height:31px}
.hero-detail-symbol span:nth-child(3){background:var(--blue);transform:rotate(13deg);height:42px}
.hero-detail p{margin:0;display:flex;flex-direction:column;gap:4px;font-size:13px}
.hero-detail strong{font-size:14px}
.hero-detail p span{color:var(--muted)}
.hero-visual{position:relative;align-self:stretch;min-height:620px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.hero-visual-bg{position:absolute;width:min(95%,700px);aspect-ratio:1;border-radius:50%;background:linear-gradient(140deg,#ebefff 7%,#f8f2e6 92%);transform:rotate(-13deg) translate(3%,-3%);z-index:-1}
.hero-illustration{width:min(112%,740px);max-width:none;filter:drop-shadow(0 25px 25px rgba(19,32,66,.08));animation:heroFloat 7s ease-in-out infinite;transform-origin:center}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.visual-badge{position:absolute;z-index:2;display:flex;align-items:center;gap:9px;padding:13px 17px;font-size:10px;letter-spacing:.09em;font-weight:900;background:#fff;border:1px solid rgba(30,44,71,.06);box-shadow:0 14px 40px rgba(19,29,52,.09);border-radius:9px;transform:rotate(-7deg);white-space:nowrap}
.visual-badge-top{top:12%;right:0}
.visual-badge-bottom{bottom:17%;left:0;transform:rotate(6deg)}
.visual-badge-bottom svg{height:19px;width:19px;color:var(--coral)}
.visual-badge-dot{width:8px;height:8px;background:var(--lime);border-radius:50%}
.visual-badge .slash{color:var(--coral);margin-inline:1px}
.hero-bottom{display:flex;align-items:center;gap:0;border-top:1px solid var(--line);min-height:89px;position:relative;z-index:4}
.hero-bottom>span{display:flex;align-items:center;gap:14px;font-size:10px;color:var(--coral);font-weight:900;letter-spacing:.04em;padding-right:clamp(17px,3vw,48px);margin-right:clamp(17px,3vw,48px);border-right:1px solid var(--line);white-space:nowrap}
.hero-bottom strong{font-size:13px;color:var(--ink);font-weight:800}
.hero-bottom>a{margin-left:auto;display:flex;gap:15px;align-items:center;font-size:9px;font-weight:900;letter-spacing:.14em;white-space:nowrap}
.hero-bottom>a svg{width:18px;height:18px}
/* TICKER */
.marquee-band{background:var(--blue);color:#fff;overflow:hidden;min-height:65px;display:flex;align-items:center;clip-path:polygon(0 14%,100% 0,100% 86%,0 100%);position:relative;z-index:2}
.marquee-track{display:flex;align-items:center;gap:38px;white-space:nowrap;min-width:max-content;animation:marquee 28s linear infinite;font-size:19px;letter-spacing:.075em;font-weight:900}
.marquee-flower{font-size:29px;color:var(--lime);line-height:1}
@keyframes marquee{to{transform:translateX(-50%)}}
/* COMMON SECTION */
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:48px}
.section-heading h2,.delivery h2,.schedule h2,.contact h2{font-size:clamp(45px,5.4vw,83px);letter-spacing:-.077em;font-weight:900;line-height:.99;margin:22px 0 0}
.section-heading p{margin:0 0 7px;max-width:260px;line-height:1.65;color:var(--muted);font-size:15px}
.highlight-brush{position:relative;z-index:0;white-space:nowrap}
.highlight-brush::after{content:"";position:absolute;left:-1%;right:-1%;height:15px;bottom:4%;background:var(--lime);z-index:-1;transform:rotate(-1.2deg);border-radius:28px 2px 32px 8px}
.products{padding:145px 0 126px;background:var(--paper)}
.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.product-card{position:relative;min-width:0;overflow:hidden;min-height:526px;border-radius:var(--radius);isolation:isolate;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s var(--ease)}
.product-card:hover{transform:translateY(-8px);box-shadow:0 22px 48px rgba(16,29,50,.12)}
.product-vinyl{background:#dce7ff}
.product-enamel{background:#fbe6d9}
.product-auto{background:#e5e8eb}
.product-art{height:322px;width:100%;position:relative;overflow:hidden}
.product-art img{width:100%;height:100%;object-fit:contain;transition:transform .55s var(--ease)}
.product-card:hover .product-art img{transform:scale(1.06) rotate(-1deg)}
.product-content{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-height:204px;padding:23px 29px 32px;position:relative}
.product-num{position:absolute;top:0;left:29px;font-size:10px;font-weight:900;letter-spacing:.12em;color:rgba(16,29,50,.57)}
.product-content h3{font-size:clamp(29px,3.05vw,47px);font-weight:900;line-height:1.04;letter-spacing:-.06em;margin:0}
.round-link{display:flex;align-items:center;justify-content:center;width:53px;height:53px;border:1px solid var(--ink);border-radius:50%;flex-shrink:0;transition:background .25s,color .25s,transform .25s}
.round-link:hover{background:var(--ink);color:#fff;transform:rotate(-36deg)}
.round-link svg{width:22px;height:22px}
.products-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);margin-top:37px;padding-top:28px}
.products-bottom>span{display:flex;align-items:center;gap:12px;font-size:11px;font-weight:900;letter-spacing:.09em}
.star-text{font-size:32px;color:var(--coral);line-height:1}
.products-bottom>a{display:flex;align-items:center;gap:17px;font-size:13px;font-weight:800;border-bottom:1px solid var(--ink);padding-bottom:7px}
.products-bottom>a svg{width:19px}
/* COLOR MATCH */
.match{background:#101d32;color:#fff;overflow:hidden;padding:88px 0 0}
.match-grid{display:grid;grid-template-columns:49% 51%;min-height:610px;align-items:center}
.match-copy{position:relative;z-index:2;padding-bottom:52px}
.eyebrow-light{color:rgba(255,255,255,.73)}
.match-copy h2{margin:39px 0 29px;font-size:clamp(74px,7.2vw,123px);font-weight:900;line-height:.9;letter-spacing:-.087em}
.match-copy h2>span{color:var(--lime)}
.match-dot{color:var(--coral)}
.match-copy p{font-size:19px;line-height:1.55;max-width:390px;color:#c9d2e2;margin:0 0 31px}
.btn-light{background:#fff;color:var(--ink)}
.btn-light:hover{background:var(--lime)}
.match-art{align-self:stretch;position:relative;min-height:570px;display:flex;align-items:center;justify-content:center}
.match-art-glow{position:absolute;width:85%;aspect-ratio:1;top:9%;left:12%;background:radial-gradient(circle,#254875 0%,rgba(46,69,109,.2) 50%,transparent 70%);border-radius:50%}
.match-art img{position:relative;width:105%;max-width:670px;filter:drop-shadow(0 32px 21px rgba(0,0,0,.14));transition:transform .5s var(--ease)}
.match-art:hover img{transform:rotate(-3deg) translateY(-5px)}
.match-sample-label{position:absolute;right:2%;bottom:17%;background:var(--lime);color:var(--ink);font-weight:900;font-size:11px;padding:13px 18px;letter-spacing:.08em;transform:rotate(8deg)}
.match-sample-label span{color:var(--blue);padding:0 8px}
.match-stripe{height:18px;display:grid;grid-template-columns:repeat(6,1fr)}
.match-stripe span:nth-child(1){background:#456cfd}.match-stripe span:nth-child(2){background:#8f83de}.match-stripe span:nth-child(3){background:#f57657}.match-stripe span:nth-child(4){background:#f2c45b}.match-stripe span:nth-child(5){background:#d7ed6b}.match-stripe span:nth-child(6){background:#83c6b0}
/* DELIVERY */
.delivery{padding:125px 0;background:var(--paper)}
.delivery-panel{position:relative;background:var(--lime);border-radius:30px;display:grid;grid-template-columns:55% 45%;min-height:516px;overflow:hidden}
.delivery-content{position:relative;z-index:2;padding:67px 0 62px 7.1%}
.delivery h2{font-size:clamp(60px,6.3vw,100px);margin:35px 0 22px}
.delivery h2 em{font-style:normal;color:var(--blue)}
.delivery-content p{font-size:18px;line-height:1.5;margin:0 0 27px;max-width:340px;color:var(--ink-soft)}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:var(--blue)}
.delivery-art{display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate}
.delivery-art::before{content:"";position:absolute;inset:12% 1% 0 -7%;background:rgba(255,255,255,.25);border-radius:50%;transform:rotate(-20deg);z-index:-1}
.delivery-art img{width:120%;max-width:none;filter:drop-shadow(0 20px 15px rgba(16,29,50,.08))}
.delivery-corner{position:absolute;right:32px;top:27px;font-size:10px;font-weight:900;letter-spacing:.13em;transform:rotate(90deg) translateX(100%);transform-origin:right top;opacity:.5}
/* SCHEDULE */
.schedule{background:#edf0f8;padding:135px 0}
.schedule-grid{display:grid;grid-template-columns:45% 55%;align-items:center;gap:26px}
.schedule h2{font-size:clamp(59px,6.2vw,99px)}
.schedule-copy p{font-size:17px;color:var(--muted);max-width:305px;line-height:1.6;margin-top:22px}
.schedule-sticker{margin-top:42px;width:108px;height:108px;transform:rotate(-10deg);color:var(--blue)}
.schedule-card{background:#fff;border-radius:27px;padding:39px 42px 32px;min-width:0;box-shadow:0 25px 55px rgba(35,45,68,.04)}
.schedule-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:.12em;border-bottom:1px solid var(--line);padding-bottom:24px}
.schedule-card-top svg{width:25px;height:25px;color:var(--blue)}
.schedule-days{font-size:clamp(30px,3.2vw,51px);font-weight:900;letter-spacing:-.065em;margin:33px 0 20px}
.schedule-days span{color:var(--blue)}
.schedule-hours{display:flex;align-items:center;gap:16px;white-space:nowrap;color:var(--blue)}
.schedule-hours>span:not(.schedule-dash){font-size:clamp(30px,3.8vw,64px);font-weight:900;letter-spacing:-.067em}
.schedule-hours small{font-size:clamp(11px,1vw,15px);letter-spacing:-.02em;color:var(--ink);font-weight:800}
.schedule-dash{font-size:34px;color:#bac3d3}
.schedule-card-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);margin-top:41px;padding-top:22px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.08em}
.four-dot{display:flex;gap:5px}.four-dot i{display:block;width:9px;height:9px;background:var(--blue);border-radius:50%}.four-dot i:nth-child(2){background:var(--coral)}.four-dot i:nth-child(3){background:var(--lime)}.four-dot i:nth-child(4){background:#b8a1fa}
/* CONTACT + FOOTER */
.contact{background:var(--blue);color:#fff;padding:117px 0 125px;overflow:hidden}
.contact-grid{display:grid;grid-template-columns:50% 50%;gap:20px;position:relative;z-index:2;align-items:end}
.contact h2{font-size:clamp(66px,7.2vw,115px);margin:33px 0 26px}
.contact h2 em{font-style:normal;color:var(--lime)}
.contact-copy p{max-width:450px;line-height:1.6;font-size:17px;color:#e1e7ff;margin:0}
.contact-action{padding:0 0 9px 13%;min-width:0}
.contact-label{font-size:11px;letter-spacing:.14em;font-weight:900;opacity:.8}
.contact-number{display:block;white-space:nowrap;font-size:clamp(38px,4.7vw,73px);font-weight:900;letter-spacing:-.069em;margin:24px 0 30px;border-bottom:2px solid rgba(255,255,255,.4);padding-bottom:24px}
.contact-number:hover{color:var(--lime)}
.contact-buttons{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.btn-accent{background:var(--lime);color:var(--ink)}
.btn-accent:hover{background:#fff}
.btn-copy{background:transparent;border:1px solid rgba(255,255,255,.66);color:#fff;gap:10px}
.btn-copy:hover{background:#fff;color:var(--blue)}
.btn-copy svg{width:18px;height:18px}
.contact-hours{font-size:13px;font-weight:700;color:#dfe5ff;margin:28px 0 0}
.contact-hours span{color:var(--lime);margin:0 8px}
.contact-decor{position:absolute;pointer-events:none;right:-90px;top:-74px;display:flex;align-items:center;gap:13px;transform:rotate(-28deg);opacity:.12}.contact-decor span{height:430px;width:85px;background:#fff;border-radius:60px}.contact-decor span:nth-child(2){height:520px}.contact-decor span:nth-child(3){height:320px}
.footer{background:var(--ink);color:#fff;padding:48px 0 0}
.footer-top{display:grid;grid-template-columns:1fr 1.15fr .65fr;gap:36px;align-items:center;padding-bottom:44px}
.footer-brand .brand-wordmark{color:#fff}
.footer-top p{margin:0;color:#bfc9d8;line-height:1.6;font-size:14px;max-width:390px}
.footer-back{display:flex;align-items:center;gap:12px;justify-self:end;font-size:11px;font-weight:900;letter-spacing:.12em}
.footer-back svg{width:19px;height:19px}
.footer-bottom{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid rgba(255,255,255,.16);font-size:10px;font-weight:900;letter-spacing:.1em;color:#aab9ca}
.footer-bottom a{color:#fff}
.toast{position:fixed;z-index:150;bottom:25px;left:50%;transform:translate(-50%,24px);background:var(--ink);color:#fff;border-radius:999px;padding:14px 22px;box-shadow:0 12px 35px rgba(0,0,0,.2);font-size:13px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;white-space:nowrap}
.toast.visible{opacity:1;transform:translate(-50%,0)}
/* Scroll reveal is opt-in only after JS is available. */
.js-enabled .reveal{opacity:0;transform:translateY(28px);transition:opacity .72s var(--ease),transform .72s var(--ease)}
.js-enabled .reveal.visible{opacity:1;transform:translateY(0)}
/* Responsive adjustments */
@media(max-width:1250px){.container{width:min(100% - 68px,1412px)}.header-inner{gap:17px}.navigation{gap:15px}.nav-link{font-size:11px}.header-call{padding:12px 14px}.hero h1{font-size:clamp(73px,7.6vw,110px)}.hero-grid{min-height:590px}.hero-visual{min-height:570px}.product-card{min-height:475px}.product-art{height:286px}.product-content{min-height:189px}.hero-bottom>a{font-size:8px}}
@media(max-width:1050px){.header-inner{min-height:76px}.navigation{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:12px 34px 30px;display:flex;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 30px rgba(16,29,50,.11);border-top:1px solid var(--line);visibility:hidden;opacity:0;transform:translateY(-10px);pointer-events:none;transition:opacity .2s,transform .2s,visibility .2s}.navigation.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.nav-link{font-size:15px;padding:14px 8px;border-bottom:1px solid var(--line)}.nav-link::after{display:none}.nav-contact-mobile{display:block}.menu-toggle{display:flex;margin-left:0}.header-call{margin-left:auto}.hero h1{font-size:clamp(69px,8.2vw,100px)}.hero-grid{grid-template-columns:54% 46%;min-height:530px}.hero-visual{min-height:510px}.hero-bottom>span{gap:8px;margin-right:20px;padding-right:20px}.hero-bottom strong{font-size:11px}.hero-bottom>a span{display:none}.products{padding:110px 0}.product-content{padding:19px 20px 25px}.product-num{left:20px}.product-content h3{font-size:clamp(26px,3vw,37px)}.round-link{width:44px;height:44px}.match-grid{min-height:520px}.match-art{min-height:520px}.delivery{padding:100px 0}.schedule-grid{grid-template-columns:44% 56%;gap:0}.schedule-card{padding:31px}.contact-action{padding-left:5%}.contact-buttons{gap:8px}.contact-buttons .btn{min-height:50px;padding:13px 16px;gap:10px}}
@media(max-width:760px){html{scroll-padding-top:75px}.container{width:min(100% - 36px,620px)}.topline{min-height:31px}.topline-inner{min-height:31px}.topline-message{display:none}.topline-inner>span:first-child{font-size:9px}.topline-phone{font-size:10px}.header-inner{min-height:73px;gap:10px}.brand-icon{width:32px;height:34px;gap:2px}.brand-icon>span{width:9px}.brand-icon>span:nth-child(2){height:33px}.brand-wordmark{font-size:10px}.brand-wordmark strong{font-size:21px}.header-call{padding:10px 12px;font-size:0;gap:0;border-radius:50%;width:41px;height:41px;justify-content:center}.header-call svg{width:20px;height:20px}.menu-toggle{width:42px;height:42px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;min-height:0}.hero-copy{padding:65px 0 4px}.hero h1{font-size:clamp(64px,12.7vw,105px);margin:23px 0 21px}.hero-intro{font-size:16px;line-height:1.55;max-width:510px}.hero-actions{margin-top:25px}.btn{min-height:52px;padding:13px 18px;font-size:12px;gap:12px}.hero-detail{margin-top:29px}.hero-visual{min-height:0;height:clamp(345px,90vw,530px);margin-top:8px}.hero-visual-bg{width:90%;max-width:500px}.hero-illustration{width:107%;max-width:590px;max-height:560px}.visual-badge-top{top:12%;right:1%;padding:10px 12px;font-size:8px}.visual-badge-bottom{bottom:14%;left:1%;padding:10px 11px;font-size:8px}.hero-bottom{min-height:66px;justify-content:space-between}.hero-bottom>span{display:flex;flex-direction:column;align-items:start;gap:5px;border:0;margin:0;padding:0;font-size:9px}.hero-bottom strong{font-size:10px}.hero-bottom>a{display:none}.marquee-band{min-height:53px}.marquee-track{font-size:15px;gap:26px}.marquee-flower{font-size:22px}.products{padding:90px 0}.section-heading{display:block;margin-bottom:31px}.section-heading h2,.delivery h2,.schedule h2,.contact h2{font-size:clamp(42px,9vw,68px);margin-top:19px}.section-heading p{max-width:none;margin:18px 0 0}.products-grid{grid-template-columns:1fr;gap:15px}.product-card{min-height:0}.product-art{height:clamp(240px,64vw,360px)}.product-content{min-height:148px;padding:25px 26px 26px}.product-content h3{font-size:clamp(34px,8vw,52px)}.product-num{top:7px;left:26px}.round-link{width:48px;height:48px}.products-bottom{align-items:flex-start;gap:19px;flex-direction:column}.match{padding-top:81px}.match-grid{display:flex;flex-direction:column;min-height:0;align-items:stretch}.match-copy{padding-bottom:0}.match-copy h2{font-size:clamp(68px,13.2vw,105px);margin:29px 0 23px}.match-copy p{font-size:17px}.match-art{min-height:0;height:clamp(340px,90vw,590px);align-self:stretch}.match-art img{width:105%;max-height:100%}.match-sample-label{bottom:10%;right:1%;font-size:9px}.match-stripe{height:14px}.delivery{padding:86px 0}.delivery-panel{display:flex;flex-direction:column;min-height:0;border-radius:23px}.delivery-content{padding:48px 26px 0}.delivery h2{font-size:clamp(53px,11vw,82px);margin:22px 0 17px}.delivery-content p{font-size:16px}.delivery-art{height:clamp(245px,70vw,390px)}.delivery-art img{width:105%;max-height:100%}.delivery-corner{display:none}.schedule{padding:90px 0}.schedule-grid{display:flex;flex-direction:column;align-items:stretch;gap:30px}.schedule-copy p{font-size:16px}.schedule-sticker{display:none}.schedule-card{padding:27px 24px}.schedule-days{font-size:clamp(32px,8vw,50px);margin:25px 0 15px}.schedule-hours>span:not(.schedule-dash){font-size:clamp(27px,7vw,55px)}.schedule-hours{gap:10px}.schedule-dash{font-size:23px}.schedule-card-foot{margin-top:29px}.contact{padding:84px 0 91px}.contact-grid{grid-template-columns:1fr;gap:42px}.contact h2{font-size:clamp(64px,12vw,104px);margin:25px 0 21px}.contact-copy p{font-size:16px}.contact-action{padding:0}.contact-number{font-size:clamp(39px,10vw,69px);margin:17px 0 25px;padding-bottom:18px}.contact-decor{right:-160px;opacity:.08}.footer{padding-top:42px}.footer-top{grid-template-columns:1fr;gap:22px;padding-bottom:33px}.footer-back{justify-self:start}.footer-bottom{flex-wrap:wrap;gap:8px 18px;justify-content:space-between;padding:19px 0;font-size:9px}.footer-bottom>span:nth-child(2){order:3;width:100%}}
@media(max-width:390px){.container{width:min(100% - 28px,620px)}.hero h1{font-size:clamp(55px,12.9vw,64px)}.hero-actions .btn{font-size:11px;padding:12px 14px}.hero-actions{gap:7px}.hero-visual{height:340px}.visual-badge{font-size:7px}.hero-bottom strong{font-size:9px}.contact-number{font-size:35px}.schedule-hours>span:not(.schedule-dash){font-size:26px}.schedule-hours small{font-size:10px}.schedule-card{padding:23px 17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.js-enabled .reveal{opacity:1;transform:none}}

/* Decorative starbursts use CSS rather than glyphs or emoji. */
.marquee-flower,.star-text{display:inline-block;flex-shrink:0;width:18px;height:18px;background:currentColor;clip-path:polygon(50% 0,60% 30%,85% 15%,70% 40%,100% 50%,70% 60%,85% 85%,60% 70%,50% 100%,40% 70%,15% 85%,30% 60%,0 50%,30% 40%,15% 15%,40% 30%)}
.marquee-flower{color:var(--lime)}
.star-text{width:29px;height:29px;color:var(--coral)}
