:root{--red:#c51f3f;--red-dark:#97172f;--ink:#171717;--muted:#686868;--paper:#fff;--soft:#f5f3f2;--line:#ded9d7;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.55 "DM Sans",sans-serif}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Manrope",sans-serif;letter-spacing:-.045em;line-height:1.02}.header{height:94px;padding:10px 4vw;display:flex;align-items:center;gap:34px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.logo-link{width:74px;height:74px;flex:none}.logo-link img{width:100%;height:100%;object-fit:cover}.header nav{display:flex;gap:28px;margin-left:auto}.header nav a{text-decoration:none;font-weight:700;font-size:.92rem}.header nav a:hover{color:var(--red)}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 21px;border:0;border-radius:999px;background:var(--red);color:#fff;font-weight:800;text-decoration:none;cursor:pointer;transition:.2s transform,.2s background}.header-cta:hover,.button:hover{background:var(--red-dark);transform:translateY(-2px)}.menu{display:none;margin-left:auto;padding:10px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font:700 .9rem "DM Sans"}.hero{min-height:calc(100vh - 94px);padding:5vw 4vw;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:5vw}.overline{text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:.74rem;color:var(--red)}.hero h1{font-size:clamp(3.1rem,6vw,7.2rem);max-width:780px;margin:22px 0}.hero h1 em{font-style:normal;color:var(--red)}.hero-copy>p:not(.overline){max-width:610px;font-size:1.15rem;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:36px}.text-link{font-weight:800;text-underline-offset:5px}.hero-visual{margin:0;position:relative;border-radius:30px;overflow:hidden;background:var(--soft);min-height:590px}.hero-visual img{width:100%;height:100%;min-height:590px;object-fit:cover}.hero-visual figcaption{position:absolute;left:22px;right:22px;bottom:22px;padding:14px 18px;border-radius:999px;background:rgba(255,255,255,.9);font-weight:700;text-align:center;backdrop-filter:blur(10px)}.intro{padding:120px 8vw;display:grid;grid-template-columns:1fr 2.2fr;gap:6vw;border-top:1px solid var(--line)}.intro-heading{display:flex;gap:16px;color:var(--red);font-weight:800}.intro-heading p{margin:0}.intro-copy h2,.section-title h2,.process h2,.quote h2{font-size:clamp(2.7rem,5vw,5.6rem);margin-bottom:30px}.intro-copy>p{max-width:790px;font-size:1.25rem;color:var(--muted)}blockquote{margin:48px 0 0;padding:26px 0 26px 30px;border-left:6px solid var(--red);font:700 clamp(1.25rem,2.4vw,2rem)/1.35 "Manrope";max-width:920px}.audiences{display:grid;grid-template-columns:1fr 1fr}.audiences article{padding:70px 7vw;background:var(--red);color:white}.audiences article+article{background:var(--ink)}.audiences span{font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.audiences h3{font-size:clamp(2rem,4vw,4rem);margin:30px 0 18px}.audiences p{max-width:520px;font-size:1.1rem}.services{padding:120px 4vw;background:var(--soft)}.section-title{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:5vw;margin-bottom:55px}.section-title>p{max-width:560px;color:var(--muted);font-size:1.05rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{min-height:410px;position:relative;overflow:hidden;border-radius:var(--radius);background:#111;color:#fff}.service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.45s transform}.service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.04) 70%)}.service-card>div{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:27px}.service-card>div>p{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:.7rem;color:#fff;margin-bottom:9px}.service-card h3{font-size:1.65rem;margin-bottom:18px}.service-card a{font-weight:700;text-underline-offset:5px}.service-card:hover img{transform:scale(1.045)}.service-card.tall{grid-row:span 2;min-height:840px}.service-card.wide{grid-column:span 2}.process{padding:120px 8vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw}.process ol{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.process li{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:30px 0;border-bottom:1px solid var(--line)}.process li>span{font-weight:800;color:var(--red)}.process h3{font-size:1.4rem;margin-bottom:8px}.process li p{color:var(--muted);margin:0}.quote{padding:100px 8vw;background:var(--red);color:white;display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw}.quote .overline{color:#fff}.quote-intro>p:last-child{font-size:1.08rem;max-width:560px}.quote form{padding:36px;border-radius:var(--radius);background:#fff;color:var(--ink);display:grid;gap:18px}.quote label{font-weight:800;font-size:.9rem;display:grid;gap:7px}.quote input,.quote select,.quote textarea{width:100%;padding:13px 14px;border:1px solid #ccc;border-radius:12px;background:#fff;font:1rem "DM Sans"}.quote input:focus,.quote select:focus,.quote textarea:focus{outline:3px solid rgba(197,31,63,.22);border-color:var(--red)}.quote form .button{width:max-content}.quote form>p{font-size:.82rem;color:var(--muted);margin:0}footer{padding:75px 4vw 28px;display:grid;grid-template-columns:1.25fr 1fr 1.2fr 1.2fr;gap:40px;background:var(--ink);color:#fff}footer h3{color:#fff;font-size:1.05rem;letter-spacing:0}footer p{color:#ccc}footer a:hover{color:#ff7a93}.footer-brand img{width:120px;border-radius:14px}.footer-brand p{font:700 1.3rem/1.25 "Manrope";margin-top:20px;color:#fff}.legal-details{grid-column:1/-1;padding-top:25px;border-top:1px solid #444;color:#bbb;font-size:.78rem;line-height:1.7}.legal-details strong{color:#fff}.copyright{grid-column:1/-1;margin:0;font-size:.78rem;color:#888}.hours p{font-size:.9rem;line-height:1.75}@media(max-width:1050px){.header nav,.header-cta{display:none}.menu{display:block}.header.open nav{display:flex;position:absolute;top:93px;left:0;right:0;padding:25px 4vw;background:#fff;border-bottom:1px solid var(--line);flex-direction:column}.hero{grid-template-columns:1fr;padding-top:60px}.hero-visual{min-height:520px}.hero-visual img{min-height:520px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card.tall{grid-row:span 1;min-height:410px}.service-card.wide{grid-column:span 1}.process,.quote{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}}@media(max-width:680px){.header{height:78px}.logo-link{width:58px;height:58px}.header.open nav{top:77px}.hero{padding:48px 20px 70px}.hero h1{font-size:clamp(2.6rem,13vw,4.3rem)}.hero-actions{align-items:flex-start;flex-direction:column}.hero-visual,.hero-visual img{min-height:420px}.hero-visual figcaption{border-radius:18px}.intro{padding:80px 20px;grid-template-columns:1fr}.audiences{grid-template-columns:1fr}.audiences article{padding:55px 20px}.services{padding:80px 20px}.section-title{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.service-card{min-height:390px}.process,.quote{padding:80px 20px}.quote form{padding:24px}footer{grid-template-columns:1fr;padding:60px 20px 25px}.legal-details,.copyright{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service-card img,.button,.header-cta{transition:none}}
.service-more{padding:0;border:0;background:transparent;color:#fff;font:700 1rem "DM Sans";text-decoration:underline;text-underline-offset:5px;cursor:pointer}.service-more:hover{color:#ffd4dc}.service-dialog{width:min(820px,calc(100% - 32px));max-height:88vh;padding:44px;border:0;border-radius:var(--radius);color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.3)}.service-dialog::backdrop{background:rgba(20,12,14,.72);backdrop-filter:blur(5px)}.service-dialog h2{font-size:clamp(2.5rem,5vw,4.6rem);margin:8px 0 24px}.service-dialog h3{font-size:1.35rem;letter-spacing:-.025em;margin:30px 0 10px}.service-dialog p,.service-dialog li{color:var(--muted)}.service-dialog li+li{margin-top:10px}.service-dialog blockquote{margin:30px 0;padding:20px 0 20px 22px;font-size:1.15rem}.dialog-close{position:sticky;float:right;top:0;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer}.dialog-close:hover{color:var(--red);border-color:var(--red)}.business-catalog{margin-top:24px}
@media(max-width:680px){.service-dialog{padding:28px 22px}.service-dialog h2{font-size:2.5rem}}
.mission-copy{margin-top:24px;padding:24px 28px;border-radius:18px;background:var(--soft);border-left:5px solid var(--red)}.mission-copy strong{color:var(--ink)}.dialog-lead{font-size:1.15rem}.tshirt-dialog{width:min(920px,calc(100% - 32px))}.tshirt-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.tshirt-facts>div{padding:20px;border-radius:16px;background:var(--soft);border:1px solid var(--line)}.tshirt-facts span,.tshirt-facts small{display:block;color:var(--muted)}.tshirt-facts span{font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.tshirt-facts strong{display:block;margin:6px 0;font:800 1.65rem "Manrope";color:var(--red)}.care-card{margin:32px 0;padding:26px;border-radius:20px;background:var(--ink);color:#fff}.care-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.care-card figcaption .care-kicker{display:flex;align-items:center;gap:9px;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ff9bad}.care-heart{font-size:1.25rem;line-height:1;color:var(--red)}.care-card figcaption strong{font:800 1.5rem "Manrope";white-space:nowrap}.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.care-grid>div{padding:18px;border-radius:14px;background:#292929;text-align:center}.care-symbol{display:grid;width:58px;height:58px;margin:0 auto 12px;place-items:center;border:2px solid #fff;border-radius:50%;font:800 1.15rem "Manrope"}.care-grid strong,.care-grid small{display:block}.care-grid small{margin-top:5px;color:#cfcfcf}@media(max-width:680px){.tshirt-facts,.care-grid{grid-template-columns:1fr}.mission-copy{padding:20px}.care-card{padding:20px}.care-card figcaption{align-items:flex-start;flex-wrap:wrap}.care-card figcaption strong{font-size:1.3rem;white-space:normal}}
.service-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}.service-points section{margin:0;padding:22px;border:1px solid var(--line);border-radius:16px;background:var(--soft)}.service-points section>span{display:block;color:var(--red);font-weight:800;font-size:.78rem;letter-spacing:.12em}.service-points h3{margin:10px 0 8px}.service-points p{margin:0}.dialog-note{margin:28px 0;padding:20px 22px;border-radius:14px;background:#fbe9ed;border-left:5px solid var(--red);color:var(--ink)!important;font-weight:700}@media(max-width:760px){.service-points{grid-template-columns:1fr}}
.newsletter{display:grid;grid-template-columns:.72fr 1.28fr;background:var(--ink);color:#fff}.newsletter-offer{min-height:420px;padding:60px 7vw;display:flex;flex-direction:column;justify-content:center;background:var(--red)}.newsletter-offer span{text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:.78rem}.newsletter-offer strong{font:800 clamp(5.5rem,11vw,11rem)/.9 "Manrope";letter-spacing:-.08em}.newsletter-offer p{margin:15px 0 0;font:700 1.4rem "Manrope"}.newsletter-copy{padding:65px 8vw 65px 6vw;align-self:center}.newsletter-copy h2{max-width:760px;margin:16px 0 20px;font-size:clamp(2.5rem,4.7vw,5rem)}.newsletter-copy>p:not(.overline){max-width:680px;color:#ccc;font-size:1.08rem}.newsletter form{margin-top:30px}.newsletter label{display:block;margin-bottom:8px;font-weight:800}.newsletter form>div{display:flex;gap:10px}.newsletter input{min-width:0;flex:1;padding:15px 17px;border:1px solid #555;border-radius:999px;background:#fff;font:1rem "DM Sans"}.newsletter input:focus{outline:3px solid rgba(255,255,255,.3);border-color:#fff}.newsletter small{display:block;margin-top:10px;color:#aaa}@media(max-width:760px){.newsletter{grid-template-columns:1fr}.newsletter-offer{min-height:290px;padding:50px 20px}.newsletter-copy{padding:55px 20px}.newsletter form>div{align-items:stretch;flex-direction:column}.newsletter form .button{width:100%}}
.header nav{gap:clamp(14px,2vw,30px)}.header nav a{font-size:clamp(.72rem,.9vw,.88rem);letter-spacing:.045em;white-space:nowrap}
.hero{grid-template-columns:minmax(360px,.72fr) minmax(560px,1.28fr);gap:4vw}.hero-visual{min-height:0;aspect-ratio:2/1}.hero-visual img{height:100%;min-height:0;object-fit:contain;background:var(--soft)}
@media(max-width:1050px){.hero{grid-template-columns:1fr}.hero-visual,.hero-visual img{min-height:0}.hero-visual{aspect-ratio:2/1}}
@media(max-width:680px){.hero-visual,.hero-visual img{min-height:0}.hero-visual{aspect-ratio:1.65/1}}
.header-socials{display:flex;gap:8px;flex:none}.header-socials a{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--red);transition:.2s background,.2s color,.2s transform}.header-socials a:hover{background:var(--red);color:#fff;transform:translateY(-2px)}.header-socials svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.header-socials .icon-dot{fill:currentColor;stroke:none}
@media(max-width:1050px){.header-socials{margin-left:auto}.menu{margin-left:0}}
@media(max-width:430px){.header-socials a{width:34px;height:34px}.header-socials svg{width:17px;height:17px}}
.catalogs{padding:120px 8vw;background:#fff}.catalogs-heading{max-width:900px;margin-bottom:50px}.catalogs-heading h2{font-size:clamp(2.7rem,5vw,5.6rem);margin-bottom:24px}.catalogs-heading>p:last-child{max-width:720px;color:var(--muted);font-size:1.08rem}.catalog-card{display:grid;grid-template-columns:minmax(260px,.72fr) 1.28fr;gap:5vw;align-items:center;padding:34px;border:1px solid var(--line);border-radius:var(--radius);background:var(--soft)}.catalog-card>img{width:100%;max-height:560px;object-fit:cover;object-position:center top;border-radius:18px}.catalog-card h3{font-size:clamp(2.2rem,4vw,4rem);margin:10px 0 18px}.catalog-card>div>p:not(.catalog-label){max-width:660px;color:var(--muted);font-size:1.05rem}.catalog-label{color:var(--red);font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.catalog-actions{display:flex;align-items:center;gap:24px;margin:28px 0 18px}.catalog-download{font-weight:800;text-underline-offset:5px}.catalog-card small{display:block;color:var(--muted)}
@media(max-width:760px){.catalogs{padding:80px 20px}.catalog-card{grid-template-columns:1fr;padding:22px}.catalog-card>img{max-height:420px}.catalog-actions{align-items:flex-start;flex-direction:column}}
.header{height:102px;padding:8px clamp(18px,4vw,56px);gap:clamp(18px,2.5vw,38px);background:#fff;border-top:1px solid var(--line);box-shadow:none}.logo-link{width:74px;height:74px}.header nav{align-items:center;justify-content:flex-end;gap:clamp(18px,2.35vw,36px);margin-left:auto}.header nav a{padding:13px 0;font-size:clamp(.76rem,.94vw,.92rem);font-weight:600;letter-spacing:0}.header nav .nav-contact{padding:11px 14px;border:2px solid var(--ink);border-radius:2px}.header nav .nav-contact:hover{border-color:var(--red)}.header-socials{padding-left:20px;border-left:1px solid #eee}.header-socials a{border:0;color:#aaa}.header-socials a:hover{color:var(--red);background:transparent}.menu{border-radius:2px}.hero{min-height:calc(100vh - 102px)}
@media(min-width:901px){.header nav{display:flex!important}.header .menu{display:none!important}.header-socials{margin-left:0!important}}
@media(max-width:900px){.header{height:82px}.logo-link{width:62px;height:62px}.header.open nav{top:81px}.header-socials{padding-left:0;border-left:0}.hero{min-height:calc(100vh - 82px)}}
.hero{grid-template-columns:minmax(390px,1fr) minmax(480px,1fr);gap:5.5vw}.hero-visual{width:92%;justify-self:end}
@media(max-width:1050px){.hero{grid-template-columns:1fr}.hero-visual{width:100%;justify-self:stretch}}
.bio-button{margin-top:8px}.bio-dialog{width:min(860px,calc(100% - 32px))}.bio-dialog>p{font-size:1.05rem}.bio-milestone{margin:30px 0;padding:26px;border-radius:18px;background:var(--soft);border:1px solid var(--line)}.bio-milestone>span{display:block;color:var(--red);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}.bio-milestone h3{margin:10px 0 12px;font-size:1.55rem}.bio-milestone p{margin:0;color:var(--muted)}.bio-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.business-dialog{width:min(980px,calc(100% - 32px))}.business-services{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:30px 0}.business-services section{margin:0;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.business-services section:last-child{grid-column:1/-1}.business-services h3{margin:0 0 10px;font-size:1.2rem}.business-services p{margin:0}@media(max-width:680px){.business-services{grid-template-columns:1fr}.business-services section:last-child{grid-column:auto}}
.tshirt-journey{margin-top:34px}.tshirt-journey>h3{margin-top:8px}.journey-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px 0}.journey-grid article{min-height:205px;margin:0;padding:30px 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:18px;background:var(--red);border:1px solid var(--red);color:#fff;text-align:center}.journey-grid article:last-child{grid-column:1/-1}.journey-grid h4{margin:0 0 14px;font:800 1.42rem/1.18 "Manrope";color:#fff}.journey-grid p{max-width:42ch;margin:0;color:#fff!important}.tshirt-journey blockquote{margin-top:24px;color:var(--ink)}@media(max-width:680px){.journey-grid{grid-template-columns:1fr}.journey-grid article,.journey-grid article:last-child{grid-column:auto;min-height:180px}}
.photo-creations{margin-top:38px}.photo-creations>h3{margin-top:8px}.photo-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}.photo-product-grid article{margin:0;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.photo-product-grid article:first-child{grid-column:1/-1;background:var(--ink);color:#fff}.photo-product-grid article:first-child p{color:#d7d7d7}.photo-product-grid span{display:block;margin-bottom:16px;color:var(--red);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.photo-product-grid article:first-child span{color:#ff8da4}.photo-product-grid h4{margin:0 0 10px;font:800 1.3rem/1.15 "Manrope"}.photo-product-grid p{margin:0}.photo-product-grid a{display:inline-block;margin-top:18px;color:#fff;font-weight:800;text-underline-offset:5px}@media(max-width:680px){.photo-product-grid{grid-template-columns:1fr}.photo-product-grid article:first-child{grid-column:auto}}
.sticker-points{grid-template-columns:repeat(2,1fr)}.sticker-points .sticker-uv{grid-column:1/-1}.sticker-uv p+p{margin-top:12px}.sticker-slogan{margin:22px 0 28px;padding:20px 24px;border-radius:16px;background:var(--red);color:#fff!important;font:800 clamp(1.25rem,2.5vw,1.8rem)/1.2 "Manrope";text-align:center}@media(max-width:680px){.sticker-points{grid-template-columns:1fr}}
.dialog-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.service-dialog .text-link{font-weight:800;color:var(--red)}
.gift-dialog{width:min(930px,calc(100% - 32px))}.gift-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:30px 0}.gift-groups section{margin:0;padding:26px;border-radius:18px;background:var(--soft);border:1px solid var(--line)}.gift-groups section:first-child{background:var(--red);border-color:var(--red);color:#fff}.gift-groups section:first-child li{color:#fff}.gift-groups span{display:block;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--red)}.gift-groups section:first-child span{color:#fff}.gift-groups h3{margin:10px 0 18px}.gift-groups ul{margin:0;padding-left:20px}@media(max-width:680px){.gift-groups{grid-template-columns:1fr}}
.clothing-dialog{width:min(930px,calc(100% - 32px))}.warm-feature{margin:30px 0;padding:28px;border-radius:20px;background:var(--red);color:#fff}.warm-feature span{display:block;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.warm-feature h3{margin:10px 0 18px}.warm-feature p{margin:0;color:#fff}.warm-feature ul{margin:15px 0 18px;padding-left:21px}.warm-feature li{margin:0 0 10px;color:#fff}.warm-feature li:last-child{margin-bottom:0}.warm-feature strong{color:#fff}.clothing-other{margin:28px 0;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--soft)}.clothing-other>h3{margin:8px 0 22px!important}.clothing-other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.clothing-other-grid>div+div{padding-left:22px;border-left:1px solid var(--line)}.clothing-other-grid h4{margin:0 0 10px}.clothing-other-grid p{margin:0;color:var(--muted)!important}@media(max-width:760px){.clothing-other-grid{grid-template-columns:1fr;gap:20px}.clothing-other-grid>div+div{padding:20px 0 0;border-left:0;border-top:1px solid var(--line)}}
.techniques-section{margin-top:34px}.techniques-section>h3{margin-top:8px!important}.techniques-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.techniques-grid article{margin:0;padding:25px 22px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.techniques-grid article>span{display:block;margin-bottom:12px;color:var(--red);font-size:.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.techniques-grid h4{margin:0 0 12px}.techniques-grid p{margin:0;color:var(--muted)!important}.techniques-grid .embroidery-technique{background:var(--ink);border-color:var(--ink);color:#fff}.techniques-grid .embroidery-technique h4{color:#fff}.techniques-grid .embroidery-technique p{color:#ddd!important}.techniques-grid .embroidery-technique>span{color:#ff9bad}@media(max-width:760px){.techniques-grid{grid-template-columns:1fr}}

/* Gerarchia tipografica comune */
.section-title h2,.intro-copy h2,.process h2,.quote h2,.catalogs-heading h2,.newsletter-copy h2{font-size:clamp(2.7rem,5vw,5.2rem);line-height:.98}.service-card h3{font-size:clamp(1.45rem,2vw,1.7rem);line-height:1.08}.catalog-card h3{font-size:clamp(2.2rem,3.5vw,3.6rem);line-height:1.02}.service-dialog h2{font-size:clamp(2.6rem,5vw,4.5rem);line-height:1.02;margin:8px 0 24px}.service-dialog .overline{font-size:.75rem;line-height:1.4}.service-dialog .dialog-lead{font-size:1.15rem;line-height:1.6}.service-dialog>p:not(.overline):not(.dialog-lead),.service-dialog section>p,.service-dialog li{font-size:1rem;line-height:1.65}.service-dialog h3,.service-dialog h4,.business-services h3,.photo-product-grid h4,.journey-grid h4{font-size:1.25rem;line-height:1.2;letter-spacing:-.025em}.service-dialog section>h3{margin:30px 0 10px}.service-dialog .button,.service-more{font-size:1rem;line-height:1.2}.dialog-note{font-size:1rem!important;line-height:1.55!important}.service-points section>span,.photo-product-grid span,.gift-groups span,.warm-feature span,.clothing-grid span,.journey-grid span{font-size:.75rem;line-height:1.4}
@media(max-width:680px){.service-dialog h2{font-size:2.45rem}.service-dialog .dialog-lead{font-size:1.08rem}.section-title h2,.intro-copy h2,.process h2,.quote h2,.catalogs-heading h2,.newsletter-copy h2{font-size:2.65rem}}
.reviews{padding:110px 8vw;background:var(--soft)}.reviews-heading{display:grid;grid-template-columns:1fr auto;gap:12px 50px;align-items:end}.reviews-heading>.overline{grid-column:1/-1;margin-bottom:0}.reviews-heading h2{max-width:850px;margin:0;font-size:clamp(2.7rem,5vw,5.2rem)}.reviews-score{text-align:right}.reviews-score strong{display:block;font:800 3rem/1 "Manrope";color:var(--red)}.reviews-score span{color:var(--red);letter-spacing:.12em}.reviews-score p{margin:5px 0 0;color:var(--muted);font-size:.9rem}.review-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:48px 0 28px}.review-list blockquote{margin:0;padding:28px;border:1px solid var(--line);border-left:5px solid var(--red);border-radius:18px;background:#fff}.review-list blockquote p{margin:0;font:700 1.2rem/1.45 "Manrope"}.review-list blockquote cite{display:block;margin-top:22px;color:var(--muted);font-size:.85rem;font-style:normal}.reviews-link{display:inline-block}@media(max-width:760px){.reviews{padding:80px 20px}.reviews-heading{grid-template-columns:1fr}.reviews-score{text-align:left}.review-list{grid-template-columns:1fr;margin-top:36px}.reviews-heading h2{font-size:2.65rem}}
@media(min-width:1051px){.hero{grid-template-columns:minmax(540px,1.02fr) minmax(560px,.98fr);gap:3vw;padding-top:4vw;padding-bottom:4vw}.hero-visual{width:100%;min-height:540px;aspect-ratio:1.38/1;justify-self:stretch}.hero-visual img{height:100%;min-height:540px;object-fit:cover;object-position:70% center}.hero-visual figcaption{left:24px;right:24px;bottom:24px}}
.intro-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.intro-actions .bio-button{margin-top:0}.color-button{background:var(--ink)}.color-button:hover{background:#333}.color-dialog{width:min(900px,calc(100% - 32px))}.color-story{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:stretch;margin:32px 0}.true-red-swatch{min-height:240px;padding:24px;border-radius:20px;background:var(--red);color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.true-red-swatch span{font:800 1.7rem "Manrope"}.true-red-swatch small{font-weight:800;letter-spacing:.15em}.color-story h3{margin-top:0}@media(max-width:680px){.intro-actions{align-items:stretch;flex-direction:column}.intro-actions .button{width:100%}.color-story{grid-template-columns:1fr}.true-red-swatch{min-height:180px}}
.print-dialog{width:min(940px,calc(100% - 32px))}.print-services{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}.print-services section{margin:0;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--soft)}.print-services section:nth-child(2){background:var(--red);border-color:var(--red);color:#fff}.print-services section:nth-child(2) p{color:#fff}.print-services span{display:block;color:var(--red);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.print-services section:nth-child(2) span{color:#fff}.print-services h3{margin:10px 0}.print-services p{margin:0}.print-howto{margin:30px 0;padding:26px;border-radius:20px;background:var(--ink);color:#fff}.print-howto>.overline{color:#ff9bad}.print-howto>div{padding:18px 0;border-top:1px solid #444}.print-howto h3{margin:0 0 8px;color:#fff}.print-howto p{margin:0;color:#d4d4d4}.print-howto a{color:#fff}@media(max-width:760px){.print-services{grid-template-columns:1fr}.print-howto{padding:21px}}

/* Contatti, mappa e preferenze privacy */
.audiences .audience-heart{display:inline-block;margin-left:7px;color:#fff;font-size:1rem;line-height:1;letter-spacing:0;text-transform:none;vertical-align:-.05em}
.audience-link{display:inline-block;margin-top:10px;color:#fff;font-weight:800;text-underline-offset:5px}
.audience-link:hover{color:#fff;text-decoration-thickness:2px}
@font-face{font-family:"DM Sans";src:url("fonts/dm-sans-400.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:"DM Sans";src:url("fonts/dm-sans-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:"DM Sans";src:url("fonts/dm-sans-600.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:"DM Sans";src:url("fonts/dm-sans-700.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:"Manrope";src:url("fonts/manrope-500.ttf") format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:"Manrope";src:url("fonts/manrope-600.ttf") format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:"Manrope";src:url("fonts/manrope-700.ttf") format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:"Manrope";src:url("fonts/manrope-800.ttf") format("truetype");font-style:normal;font-weight:800;font-display:swap}
.header-socials a{width:44px;height:44px;border:0;color:#fff;box-shadow:0 5px 14px rgba(0,0,0,.14)}.header-socials svg{width:22px;height:22px}.header-socials a:nth-child(1){background:radial-gradient(circle at 30% 105%,#fdf497 0 5%,#fd5949 38%,#d6249f 62%,#285aeb 100%)}.header-socials a:nth-child(2){background:#050505}.header-socials a:nth-child(2) svg{filter:drop-shadow(-1.5px 0 #25f4ee) drop-shadow(1.5px 0 #fe2c55)}.header-socials a:nth-child(3),.header-socials a:last-child{background:#25d366;border-color:#25d366;color:#fff}.header-socials a:nth-child(1):hover,.header-socials a:nth-child(2):hover,.header-socials a:nth-child(3):hover{color:#fff;filter:brightness(1.06);transform:translateY(-2px)}@media(max-width:520px){.header-socials a{width:38px;height:38px}.header-socials svg{width:19px;height:19px}}
.form-privacy-link{padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.print-durability{margin:24px 0;padding:22px 24px;border:1px solid rgba(197,31,63,.22);border-left:5px solid var(--red);border-radius:16px;background:#fff6f8}.print-durability>strong{display:block;margin-bottom:7px;font:800 1.12rem/1.3 "Manrope",sans-serif;color:var(--ink)}.print-durability p{margin:0;color:var(--muted)!important;line-height:1.6}.print-durability b{color:var(--red)}
.tshirt-occasions{margin-top:36px;padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--soft)}.tshirt-occasions>h3,.print-positions>h3{margin-top:8px!important}.occasion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px}.occasion-grid article{display:flex;gap:16px;align-items:flex-start;margin:0;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.occasion-grid article:last-child{grid-column:1/-1}.occasion-grid article>span{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border-radius:50%;background:var(--red);color:#fff;font:800 1rem "Manrope",sans-serif}.occasion-grid h4{margin:1px 0 7px!important}.occasion-grid p{margin:0;color:var(--muted)!important}.print-positions{margin-top:32px;padding:28px;border-left:5px solid var(--red);border-radius:20px;background:#fff6f8}.positions-tagline{margin:4px 0 16px!important;color:var(--red)!important;font:800 1.05rem/1.4 "Manrope",sans-serif}.print-positions ul{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 0;padding:0;list-style:none}.print-positions li{margin:0!important;padding:9px 14px;border:1px solid rgba(197,31,63,.25);border-radius:999px;background:#fff;color:var(--ink)!important;font-weight:700}.print-positions li:last-child{background:var(--red);border-color:var(--red);color:#fff!important}.print-exception{margin:18px 0 0!important;color:var(--muted)!important;font-size:.94rem!important}.tshirt-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:32px;padding:28px;border-radius:20px;background:var(--ink);color:#fff}.tshirt-cta .overline{margin-bottom:8px;color:#ff9bad}.tshirt-cta h3{margin:0 0 8px!important;color:#fff}.tshirt-cta p{max-width:560px;margin:0;color:#ddd!important}.tshirt-cta .button{flex:none}@media(max-width:680px){.occasion-grid{grid-template-columns:1fr}.occasion-grid article:last-child{grid-column:auto}.tshirt-occasions,.print-positions,.tshirt-cta{padding:22px}.tshirt-cta{align-items:stretch;flex-direction:column}.tshirt-cta .button{width:100%}}
.faq{padding:110px 8vw;background:#fff;display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:start}.faq-heading{position:sticky;top:135px}.faq-heading h2{font-size:clamp(2.7rem,5vw,5.2rem);margin:10px 0 22px}.faq-heading>p:last-child{max-width:430px;color:var(--muted);font-size:1.08rem}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{position:relative;padding:26px 54px 26px 0;list-style:none;cursor:pointer;font:800 1.16rem/1.35 "Manrope",sans-serif}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--red);font:500 1.5rem/1 "DM Sans",sans-serif;transition:.2s transform,.2s background,.2s color}.faq-list details[open] summary::after{content:"−";background:var(--red);border-color:var(--red);color:#fff}.faq-list summary:focus-visible{outline:3px solid rgba(197,31,63,.25);outline-offset:5px}.faq-list details>p{max-width:760px;margin:-4px 54px 26px 0;color:var(--muted);font-size:1rem;line-height:1.7}@media(max-width:760px){.faq{padding:80px 20px;grid-template-columns:1fr;gap:34px}.faq-heading{position:static}.faq-heading h2{font-size:2.65rem}.faq-list summary{padding:22px 48px 22px 0}.faq-list details>p{margin:-2px 0 24px}}
.cookie-banner{position:fixed}.cookie-close{position:absolute;top:10px;right:12px;width:38px;height:38px;border:1px solid #fff;border-radius:50%;background:transparent;color:#fff;font-size:1.55rem;line-height:1;cursor:pointer}.cookie-close:hover{background:#fff;color:var(--ink)}
.contact-map{grid-column:1/-1;display:grid;grid-template-columns:.7fr 1.3fr;gap:36px;align-items:center;padding:34px 0;border-top:1px solid #444}.contact-map h3{font-size:clamp(1.8rem,3vw,2.8rem);margin:8px 0 14px}.map-frame{min-height:330px;border:1px solid #4d4d4d;border-radius:20px;overflow:hidden;background:#242424}.map-frame iframe{display:block;width:100%;height:330px;border:0}.map-placeholder{min-height:330px;padding:34px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.map-placeholder strong{font:800 1.25rem/1.2 "Manrope",sans-serif}.map-placeholder p{max-width:540px;margin:12px 0 22px}.map-placeholder div{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.legal-links{grid-column:1/-1;display:flex;gap:18px;flex-wrap:wrap;margin:0}.legal-links button,.text-policy{padding:0;border:0;background:none;color:#fff;font:700 .86rem/1.4 inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}.legal-links button:hover,.text-policy:hover{color:#ff7a93}.legal-dialog section{padding-bottom:20px;border-bottom:1px solid var(--line)}.legal-dialog a{color:var(--red);font-weight:700}.policy-update{font-weight:700}.cookie-settings{width:min(650px,calc(100% - 32px));padding:38px;border:0;border-radius:var(--radius);box-shadow:0 24px 80px rgba(0,0,0,.3)}.cookie-settings::backdrop{background:rgba(20,12,14,.72);backdrop-filter:blur(5px)}.cookie-settings h2{font-size:clamp(2rem,5vw,3.2rem);margin:8px 0 26px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;border-top:1px solid var(--line)}.setting-row p{margin:4px 0 0;color:var(--muted)}.setting-row span{font-weight:800;color:var(--red);white-space:nowrap}.setting-row input{width:24px;height:24px;accent-color:var(--red)}.settings-actions,.cookie-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:24px}.button.secondary{background:#fff;color:var(--ink);border:1px solid #aaa}.button.secondary:hover{background:var(--soft)}.cookie-banner{position:fixed;z-index:100;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:24px 28px;border-radius:20px;background:#171717;color:#fff;box-shadow:0 18px 60px rgba(0,0,0,.38)}.cookie-banner[hidden]{display:none}.cookie-banner h2{margin:0 0 8px;color:#fff;font-size:1.3rem}.cookie-banner p{max-width:800px;margin:0 0 8px;color:#ddd}.cookie-banner .cookie-actions{margin:0}.cookie-banner .text-policy{font-size:.85rem}@media(max-width:760px){.contact-map{grid-template-columns:1fr}.cookie-banner{grid-template-columns:1fr;left:12px;right:12px;bottom:12px;padding:22px}.cookie-actions{justify-content:flex-start}.cookie-actions .button{flex:1}.setting-row{align-items:flex-start}.map-placeholder{padding:26px}}
.skip-link{position:fixed;z-index:1000;top:10px;left:10px;padding:12px 18px;border-radius:8px;background:#fff;color:var(--ink);font-weight:800;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.25);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid #ff7892;outline-offset:3px}.service-more{display:inline-flex;min-height:44px;align-items:center;padding:8px 0}.legal-links button,.legal-links a,.text-policy{display:inline-flex;min-height:44px;align-items:center;padding:8px 2px}.legal-links a{color:#fff;font:700 .86rem/1.4 inherit;text-decoration:underline;text-underline-offset:4px}.legal-links a:hover{color:#ff7a93}
.evolution-copy{margin:28px 0;padding:24px 28px;border-radius:18px;background:var(--ink);color:#fff!important}.evolution-copy strong{color:#ff9bad}@media(max-width:680px){.evolution-copy{padding:20px}}

/* Mantiene il logo del footer perfettamente quadrato su tutti i browser mobili. */
.footer-brand img{width:120px;height:120px;aspect-ratio:1/1;object-fit:cover}

/* Sottotitolo della Home: più leggibile, senza alterare il carattere del progetto. */
.hero-copy>p:not(.overline){font-size:1.25rem;line-height:1.55}
@media(max-width:680px){.hero-copy>p:not(.overline){font-size:1.0625rem;line-height:1.55}}
