/* Fonon V17: premium mobile-first improvements. Brand identity unchanged. */
:root{--v17-rose:#c11856;--v17-ink:#29232a;--v17-tint:#fff1f6}
html{scroll-padding-top:96px}
body{max-width:100%;overflow-x:clip}
.wrap,.hero-content,.hero-showcase,.section,.inner-main{min-width:0}
img{height:auto}
:where(a,button,input,textarea,select):focus-visible{outline:3px solid #b11856;outline-offset:3px}
/* The accent in the original hero obscured actual client photographs. */
.hero-showcase-classic .board-accent{display:none!important}
.hero-showcase-classic .board-photo,.hero-showcase-classic .board-photo img{isolation:isolate}
/* Four substantial proof points, two-across on mobile. */
.stats.v17-stats{padding-block:32px 18px}
.v17-stats .stats-grid{gap:14px}
.v17-stats .stats-grid>.v17-stat-card{background:#fff;border:1px solid #efe3e8;border-radius:21px;padding:26px 23px;box-shadow:0 12px 27px rgba(71,20,43,.05);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:164px}
.v17-stat-icon{height:40px;width:40px;background:#fceaf1;color:var(--v17-rose);border-radius:12px;display:flex!important;align-items:center;justify-content:center;margin-bottom:16px}
.v17-stat-icon svg{width:22px;height:22px;display:block}
.v17-stats .stats-grid strong.v16-stat-number{margin:0 0 9px;font-size:clamp(28px,2.8vw,38px);font-weight:800;line-height:1.12;color:var(--v17-rose);max-width:100%}
.v17-stats .stats-grid .v17-stat-label{font-size:14px;line-height:1.6;color:#594851;font-weight:700}
/* V10 targeted every span inside stats; explicitly restore icons and number spans. */
.v17-stats .stats-grid .v17-stat-icon{color:var(--v17-rose);display:flex!important}
.v17-stats .stats-grid .v16-stat-digits{color:var(--v17-rose);display:inline;font-size:inherit;line-height:inherit;overflow-wrap:normal}
.v17-stats .stats-grid .v16-stat-suffix{color:var(--v17-rose);display:inline;font-size:.72em;line-height:1;overflow-wrap:normal}

/* Services full page: editorial headline, consistent bespoke line icons. */
.v17-services-page .v17-services-hero{padding:65px 0 52px;background:radial-gradient(ellipse at 85% 5%,#f6e3ec 0%,#fbf8f9 59%,#fff 100%)}
.v17-services-hero h1{font-size:clamp(34px,4.8vw,59px);font-weight:800;line-height:1.4;letter-spacing:-1px;margin:8px 0 12px}
.v17-services-hero h1 em{font-style:normal;color:var(--v17-rose)}
.v17-services-hero p{font-size:clamp(14px,1.5vw,17px);color:#756971;line-height:1.9;margin:0;max-width:590px}
.v17-services-page .section.v17-service-section{padding:36px 0 76px}
.v17-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.v17-section-heading h2{font-size:clamp(22px,2.5vw,30px);margin:0;line-height:1.5}
.v17-section-heading span{color:#93848d;font-size:12px}
.v17-services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.v17-service-card{display:flex;flex-direction:column;align-items:flex-start;border:1px solid #eadfe5;background:white;border-radius:20px;padding:26px 23px 22px;min-height:252px;box-shadow:0 6px 24px rgba(45,25,35,.036);scroll-margin-top:110px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;min-width:0}
.v17-service-card:hover,.v17-service-card:focus-within{transform:translateY(-4px);box-shadow:0 18px 35px rgba(77,21,43,.085);border-color:#e5bdcb}
.v17-service-top{width:100%;display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}
.v17-service-icon{display:flex;align-items:center;justify-content:center;width:51px;height:51px;background:#fcebf2;color:var(--v17-rose);border-radius:15px;font-size:22px;flex-shrink:0}
.v17-service-icon .service-line-icon{width:28px;height:28px;stroke-width:1.75}
.v17-service-index{color:#c5b9c0;font:700 12px/1.4 'Manrope',system-ui,sans-serif}
.v17-service-card h3{font-size:clamp(16px,1.5vw,19px);line-height:1.6;margin:0 0 6px;color:#342a2e}
.v17-service-card p{font-size:13px;line-height:1.9;color:#74676e;margin:0 0 13px;max-width:38ch}
.v17-service-link{margin-top:auto;color:#b71955;font-size:12px;font-weight:800;display:inline-flex;gap:8px;align-items:center}
.v17-service-link span{transition:transform .2s}.v17-service-link:hover span{transform:translate(-3px,-3px)}
.v17-service-cta{padding:43px 0 48px;text-align:center;background:#30232c;color:white}
.v17-service-cta h2{font-size:clamp(22px,3vw,35px);margin:0 0 10px}
.v17-service-cta p{color:#ede0e8;margin:0 0 18px;font-size:14px}
/* Image enlargement inside selected works and Deep product categories. */
.v17-lightbox-open{display:block;width:100%;background:none;border:0;margin:0;padding:0;cursor:zoom-in;color:inherit;text-align:inherit}
.v17-lightbox-open .v13-item-image{overflow:hidden}
.v17-lightbox-open img{transition:transform .25s ease}
.v17-lightbox-open:hover img{transform:scale(1.035)}
.v17-lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;border:0;background:rgba(13,12,16,.94);color:#fff;overflow:auto}
.v17-lightbox::backdrop{background:rgba(13,12,16,.92)}
.v17-lightbox:not([open]){display:none}
.v17-lightbox-inner{position:relative;min-height:100%;width:100%;display:grid;grid-template-columns:minmax(40px,75px) minmax(0,1fr) minmax(40px,75px);align-items:center;gap:8px;padding:62px 16px 24px}
.v17-lightbox figure{margin:0;display:flex;align-items:center;justify-content:center;flex-direction:column;min-width:0;gap:16px}
.v17-lightbox figure img{display:block;max-height:75dvh;max-width:100%;width:auto;height:auto;object-fit:contain;border-radius:12px;background:white}
.v17-lightbox figcaption{font-size:14px;font-weight:700;text-align:center}
.v17-lightbox button{cursor:pointer;color:white;border:1px solid #ffffff55;background:#ffffff18;border-radius:100%;height:44px;width:44px;font-size:25px;display:grid;place-items:center;margin-inline:auto}
.v17-lightbox .v17-lightbox-close{position:absolute;top:18px;left:22px;font-size:31px;z-index:5}
.v17-lightbox button:disabled{opacity:.28;cursor:default}
/* Genuine client opinions (never shown without explicit publish setting). */
.v17-testimonials{background:#fbf7f9}
.v17-testimonials h2{margin:0 0 25px}
.v17-testimonial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.v17-testimonial{margin:0;padding:26px;border:1px solid #ecdce4;background:white;border-radius:19px;min-width:0}
.v17-testimonial p{margin:0 0 23px;line-height:2;color:#51474e;font-size:15px}
.v17-testimonial footer{display:flex;flex-direction:column;gap:3px}
.v17-testimonial footer strong{font-size:14px;color:#3b2c34}
.v17-testimonial footer span{font-size:12px;color:#93828a}
/* Subtle improvements shared by all inner pages */
.inner-main .page-hero:not(.v17-services-hero){padding-block:62px 56px}
.inner-main .section:not(.v17-service-section){scroll-margin-top:90px}
.inner-main .page-hero h1{overflow-wrap:break-word}
.contact-grid,.two-col,.deep-home-layout,.deep-contact-layout{min-width:0}
.quote-form :is(input,textarea,select){max-width:100%}
@media(max-width:980px){
 .v17-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v17-testimonial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 html{scroll-padding-top:75px}
 .wrap{width:min(100% - 28px,1180px)}
 .inner-main .page-hero:not(.v17-services-hero){padding:37px 0 33px}
 .inner-main .page-hero h1{font-size:clamp(26px,7.5vw,34px);line-height:1.5;margin:7px 0 9px}
 .inner-main .page-hero p{font-size:13px;line-height:1.9;max-width:100%}
 .inner-main .section:not(.v17-service-section){padding-top:38px;padding-bottom:44px}
 .inner-main .section h2{font-size:clamp(23px,7vw,30px);line-height:1.5}
 .hero-showcase-classic .board-accent{display:none!important}
 .stats.v17-stats{padding-top:18px;padding-bottom:12px}
 .v17-stats .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .v17-stats .stats-grid>.v17-stat-card{min-height:145px;padding:16px 14px;border-radius:17px;align-items:flex-start}
 .v17-stat-icon{width:36px;height:36px;margin-bottom:9px;border-radius:10px}
 .v17-stat-icon svg{width:20px;height:20px}
 .v17-stats .stats-grid strong.v16-stat-number{font-size:clamp(23px,6.8vw,31px);margin-bottom:8px;letter-spacing:-.5px;overflow-wrap:normal}
 .v17-stats .stats-grid .v17-stat-label{font-size:clamp(11px,3vw,13px);line-height:1.5}
 .v17-services-page .v17-services-hero{padding:34px 0 29px}
 .v17-services-hero h1{font-size:clamp(27px,7.6vw,35px);line-height:1.5;margin:7px 0 9px}
 .v17-services-hero p{font-size:12px}
 .v17-services-page .section.v17-service-section{padding:26px 0 45px}
 .v17-section-heading{margin-bottom:15px}
 .v17-section-heading h2{font-size:20px}
 .v17-section-heading span{font-size:10px}
 .v17-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .v17-service-card{min-height:196px;padding:15px 12px 13px;border-radius:15px}
 .v17-service-top{margin-bottom:15px}
 .v17-service-icon{width:40px;height:40px;border-radius:11px}
 .v17-service-icon .service-line-icon{width:24px;height:24px}
 .v17-service-index{font-size:11px}
 .v17-service-card h3{font-size:clamp(12px,3.55vw,15px);line-height:1.55;margin-bottom:6px}
 .v17-service-card p{font-size:clamp(10px,2.65vw,12px);line-height:1.65;margin-bottom:12px}
 .v17-service-link{font-size:10px}
 .v17-service-cta{padding:34px 12px}
 .v17-service-cta h2{font-size:22px}
 .v17-testimonial-grid{grid-template-columns:1fr}
 .v17-lightbox-inner{grid-template-columns:35px minmax(0,1fr) 35px;gap:0;padding:60px 6px 16px}
 .v17-lightbox figure img{max-height:68dvh}
 .v17-lightbox button{width:32px;height:32px;font-size:19px}
 .v17-lightbox .v17-lightbox-close{left:15px;width:40px;height:40px}
 .v13-category-grid,.v13-deep-category-grid{gap:9px!important}
 .v13-category-card .portfolio-detail h3,.v13-deep-category-card h3{white-space:normal;overflow-wrap:break-word}
 .deep-contact-layout>*{min-width:0}
 .contact-info,.info-cards{gap:11px}
}
@media(max-width:345px){.v17-service-card{padding:12px 9px}.v17-service-card h3{font-size:11px}.v17-stats .stats-grid>.v17-stat-card{padding:13px 10px}.v17-stats .stats-grid strong.v16-stat-number{font-size:22px}}
@media(prefers-reduced-motion:reduce){.v17-service-card,.v17-lightbox-open img,.v17-service-link span{transition:none!important;animation:none!important}}
