.tool-card--design{background-image:url('assets/tools-texture.jpg');background-position:left top}
.tool-card--video{background-image:url('assets/tools-texture.jpg');background-position:center}
.tool-card--metrics{background-image:url('assets/tools-texture.jpg');background-position:right bottom}
.contact{min-height:48vh;padding-block:4rem}.contact h2{font-size:clamp(3.8rem,10vw,8rem);margin:.2em 0}.contact-card .eyebrow{margin-bottom:.35rem}.contact a{font-size:clamp(.9rem,1.4vw,1.15rem);margin:.5rem}
.contact{background:linear-gradient(#a8bdd2a8,#a8bdd2a8),url('assets/contact-background.png') center 68%/cover}
.tool-card--design,.tool-card--video,.tool-card--metrics{background-image:url('assets/tools-pattern.jpg')}
.tool-card--design,.tool-card--video,.tool-card--metrics{background-image:none;background-color:var(--wine)}.tool-card::before{background:#4a050d24}.tool-card:focus::before,.tool-card:hover::before{background:#24020780}
@media(min-width:721px){.projects{min-height:auto;padding:4.5rem 3vw 3rem}.projects .section-heading{margin-bottom:1.8rem}.projects .section-heading span{font-size:clamp(3.8rem,7vw,6.8rem)}.projects .carousel{width:min(100%,64rem)}.projects .carousel-controls{margin-top:1rem}}
.site-header{top:1rem;left:50%;width:min(92vw,72rem);padding:.7rem 1.2rem;transform:translateX(-50%);border:1px solid #4a050d35;border-radius:999px;background:#fff0cfe8;color:var(--wine);box-shadow:0 .55rem 1.5rem #45101724;backdrop-filter:blur(12px);mix-blend-mode:normal}.site-header nav a{font-weight:600}.site-header .brand{font-size:1.7rem}@media(max-width:720px){.site-header{top:.7rem;width:calc(100% - 2rem);padding:.55rem .9rem}.site-header nav{top:calc(100% + .6rem);right:0;border-radius:1rem;box-shadow:0 .55rem 1.5rem #45101724}}
.site-header .brand{display:block;width:7rem;height:3.3rem;background:none}.brand-logo{display:block;width:100%;height:100%;background:url('assets/sol-logo.png') center 52%/160% no-repeat}@media(max-width:720px){.site-header .brand{width:5.6rem;height:2.6rem}.brand-logo{background-size:160%}}
.brand-logo{background-image:url('assets/sol-logo-bordeaux.png')}
.brand-logo{background-size:110%;background-position:center 35%}@media(max-width:720px){.brand-logo{background-size:110%;background-position:center 35%}}
.site-header{padding:.38rem .9rem}.site-header nav{gap:1.1rem}.site-header nav a{font-size:.72rem}.site-header .brand{width:5.4rem;height:2.35rem}@media(max-width:720px){.site-header{padding:.35rem .75rem}.site-header .brand{width:4.7rem;height:2.1rem}.site-header nav{gap:.8rem}}
.carousel-slide--cv{position:relative}.cv-estetica-video{position:absolute;z-index:1;left:29.8%;top:50.8%;width:25.6%;height:46.2%;object-fit:cover;display:block}
.cv-estetica-video--left{left:2.6%;top:34.6%;width:12.8%;height:31.3%}
.contact{min-height:38vh;padding-block:2.8rem}.contact h2{font-size:clamp(3.1rem,7vw,5.8rem);line-height:.78;margin:0 0 .35em}
:root{--script:'miss-robertson','Miss Robertson','Alex Brush',cursive}.signature,.script,.section-heading em,.services-grid h3,.tool-card p{font-style:italic;font-weight:400}
.custom-script-heading{width:min(100%,26rem);height:auto;margin:0 auto .2rem;object-fit:contain}
.custom-script-heading--small{width:min(100%,9rem);margin-top:-.5rem}.services-grid h3{display:flex;align-items:center;justify-content:center;height:5.7rem}.lettered-service-title{width:100%;height:auto;max-height:4.8rem;object-fit:contain}
.services-grid h3{display:block;height:auto}
.about{background:var(--blue);padding:6rem max(5vw,2rem);min-height:auto}.about-layout{width:min(100%,92rem);margin:auto;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(2rem,6vw,7rem)}.about-copy{color:var(--wine);text-align:center}.about-title{position:relative;display:inline-block;margin-bottom:1.35rem}.about-title h2{margin:0;font:600 clamp(4.5rem,10vw,9rem)/.72 var(--display);letter-spacing:-.04em;color:var(--cream)}.about-title p{position:absolute;z-index:1;top:-.35em;left:17%;margin:0;color:var(--wine);font:400 clamp(2.2rem,4.6vw,4.8rem)/.8 var(--script);white-space:nowrap}.about-copy>p{max-width:41rem;margin:0 auto .85rem;font-size:clamp(.96rem,1.35vw,1.3rem);line-height:1.4}.about-photo{width:min(100%,35rem);justify-self:center;aspect-ratio:1.09/1;background:url('assets/page-2.png') 86% 45%/225% auto no-repeat;transform:rotate(1.2deg)}@media(max-width:720px){.about{padding:5rem 1.4rem}.about-layout{grid-template-columns:1fr;gap:2.5rem}.about-title h2{font-size:21vw}.about-copy>p{font-size:1rem}.about-photo{width:min(100%,26rem);order:-1}}
.about-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}.about-copy,.about-photo{min-width:0}.about-title h2{font-size:clamp(3.8rem,7vw,8rem);white-space:nowrap}.about-photo{aspect-ratio:1.13/1;background-size:205% auto;background-position:84% 43%}@media(max-width:720px){.about-layout{grid-template-columns:1fr}.about-title h2{font-size:clamp(4rem,14vw,6.6rem)}.about-title p{font-size:clamp(2rem,8vw,3.4rem)}}
.about{overflow:hidden}.about-layout{display:flex;align-items:center;justify-content:center;gap:clamp(2rem,5vw,5rem)}.about-copy{flex:1 1 30rem;min-width:0}.about-photo{flex:0 1 32rem;width:100%;max-width:32rem;min-width:0;aspect-ratio:1.13/1;background-size:180% auto;background-position:86% 40%}@media(max-width:1000px){.about-layout{flex-direction:column;gap:3rem}.about-copy{flex-basis:auto;width:min(100%,42rem)}.about-photo{flex-basis:auto;width:min(100%,32rem);max-width:32rem}.about-title h2{font-size:clamp(4rem,14vw,7rem)}}
.about{overflow:visible}.about-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.78fr);align-items:center;gap:clamp(2rem,5vw,5rem)}.about-copy{width:auto}.about-photo{margin:0;width:100%;max-width:30rem;justify-self:center;aspect-ratio:auto;border:.75rem solid var(--wine);background:none;transform:rotate(1deg)}.about-photo img{display:block;width:100%;height:auto;object-fit:contain}@media(max-width:1000px){.about-layout{grid-template-columns:1fr}.about-copy{width:min(100%,42rem)}.about-photo{width:min(100%,30rem);max-width:30rem}.about-title h2{font-size:clamp(4rem,14vw,7rem)}}
.about-photo{position:relative;overflow:visible}.about-photo::after,.about-photo::before{content:'';position:absolute;z-index:2;border-radius:1.6rem;transform:rotate(38deg);pointer-events:none}.about-photo::after{top:-2rem;right:-.8rem;width:2rem;height:4.5rem;border:.32rem solid #f4ce67;box-shadow:0 .12rem .12rem #45101735}.about-photo::before{top:-1.3rem;right:-.18rem;width:1rem;height:3.3rem;border:.25rem solid #fff0b2}
.about-photo::after,.about-photo::before{display:none}.heart-clip{position:absolute;z-index:3;top:-2.8rem;right:-1.8rem;width:6.2rem;height:6.2rem;overflow:visible;transform:rotate(8deg);filter:drop-shadow(0 .14rem .12rem #45101745)}.heart-clip path{fill:none;stroke:#f4ce67;stroke-width:6;stroke-linecap:round;stroke-linejoin:round}
.heart-clip{display:none}.about-photo .heart-clip-image{position:absolute;z-index:3;top:-1.55rem;right:-.15rem;width:5.8rem;height:auto;object-fit:contain;transform:rotate(8deg);filter:drop-shadow(0 .14rem .12rem #45101745);pointer-events:none}
@media(max-width:430px){.hero h1{font-size:clamp(5rem,23vw,6.3rem);letter-spacing:-.06em}.tools .section-heading span{font-size:clamp(3.2rem,13vw,4.3rem);letter-spacing:-.05em}}
.section-heading span,.about-title h2{font-size:clamp(4rem,11vw,10rem)}@media(max-width:430px){.section-heading span,.about-title h2{font-size:clamp(3.2rem,13vw,4.3rem);letter-spacing:-.05em}}
.projects .section-heading span{font-size:clamp(4rem,11vw,10rem)}@media(max-width:430px){.projects .section-heading span{font-size:clamp(3.2rem,13vw,4.3rem)}}
@media(min-width:721px){.projects .section-heading span{font-size:clamp(3.8rem,8.5vw,8.5rem)}}
@media(min-width:721px){.section-heading span,.about-title h2{font-size:clamp(3.8rem,8.5vw,8.5rem)}}
.contact a{display:flex;align-items:center;justify-content:center;gap:.55rem}.contact a svg{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.hero-copy{width:auto;height:auto;display:block}.hero h1{font-size:clamp(6rem,20vw,19rem);letter-spacing:-.04em;line-height:.7}.hero .signature{position:static;right:auto;bottom:auto;margin:0;font-size:clamp(2rem,5vw,4.5rem);transform:none;white-space:normal}@media(max-width:720px){.hero h1{font-size:30vw}}
