body[data-inner-page=service]{margin:0;background:#142440;color:#ede7da;font-family:Golos,Arial,sans-serif}
.service-page{background:#ede7da;color:#142440;padding:140px max(5vw,20px) 64px;background-image:linear-gradient(#ede7daf5,#ede7daf5),url('../media/rings.svg')}
.service-page *{box-sizing:border-box}.service-page-inner{max-width:1200px;margin:auto}.service-page [hidden]{display:none!important}
.service-breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:#53606b;margin:0 0 30px}.service-breadcrumbs a{color:inherit;text-decoration:none}.service-breadcrumbs a:hover{color:#845232;text-decoration:none}
.service-hero{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:7%;padding-bottom:32px}.service-hero .cert-title{font-size:clamp(36px,5vw,70px);line-height:1.03;margin:16px 0 24px;max-width:740px}.service-lead{font-size:clamp(17px,1.6vw,21px);line-height:1.65;margin:0 0 28px;max-width:670px}.service-inline-link{display:block;width:fit-content;font-size:14px;color:#142440;text-underline-offset:5px;margin-top:18px}.service-inline-link:hover{color:#845232}
.service-page h2{font-size:clamp(28px,3.3vw,44px);font-weight:650;line-height:1.12;letter-spacing:-.04em;margin:14px 0 22px}.service-page h2>span{color:#bb7c52}.service-page h3{font-size:20px;font-weight:600;line-height:1.25;margin:0 0 15px}.service-page p{line-height:1.75}.service-page .cert-kicker{font-size:11px;letter-spacing:.12em}.service-section{padding:48px 0;border-top:1px solid #14244030;scroll-margin-top:85px}.service-section>p{max-width:720px}.service-media{background:#14244008;border:1px solid #14244045;margin:0;padding:clamp(18px,3vw,34px);display:flex;flex-direction:column;justify-content:center;gap:18px;color:#142440;overflow:hidden;position:relative}.service-media:after,.tile-media:after{content:'';position:absolute;width:70%;height:70%;border:1px solid #bb7c5235;border-radius:50%;right:-25%;bottom:-30%;pointer-events:none}.service-media.portrait{aspect-ratio:4/5}.service-media.landscape{aspect-ratio:16/9}.service-media>span,.tile-media>span{font-size:10px;letter-spacing:.1em;color:#845232}.service-media strong{font-size:clamp(18px,2vw,26px);line-height:1.35;font-weight:500}.service-media figcaption{font-size:12px;line-height:1.6;color:#53606b;max-width:380px}.service-anchor-nav{display:flex;gap:24px;overflow:auto;white-space:nowrap;padding:15px 0 25px}.service-anchor-nav a{font-size:13px;color:#142440;text-underline-offset:5px}.service-anchor-nav a:hover{color:#845232}
.service-about{display:grid;grid-template-columns:1.5fr 1fr;gap:9%;align-items:center}.service-note{border-left:2px solid #bb7c52;padding-left:24px}.service-note p{font-size:14px;color:#53606b;margin:0}.service-note h3{font-size:18px}.style-categories{display:flex;gap:24px;overflow:auto;margin:22px 0}.style-categories button{font:500 14px Golos,Arial,sans-serif;white-space:nowrap;color:#142440;background:transparent;border:0;border-bottom:2px solid transparent;padding:10px 0;min-height:44px}.style-categories button[aria-pressed=true]{border-color:#bb7c52}.style-categories button:hover{color:#845232}.style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}.style-tile{display:block;text-decoration:none;color:#142440}.tile-media{aspect-ratio:4/3;display:flex;flex-direction:column;justify-content:center;gap:13px;background:#14244008;border:1px solid #14244030;padding:22px;position:relative;overflow:hidden}.tile-media strong{font-weight:500;line-height:1.35;font-size:20px}.tile-media small{font-size:11px;color:#53606b}.tile-meta{display:block;font-size:11px;color:#845232;margin:17px 0 8px}.style-tile h3{display:flex;justify-content:space-between;margin:0}.style-tile p{font-size:14px;margin:12px 0 0;color:#53606b}.style-tile:hover h3{color:#845232}.style-tile:hover .tile-media{border-color:#14244030}.service-process{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:7%}.service-process .service-media{position:sticky;top:90px}.service-steps{list-style:none;padding:0;margin:28px 0 0}.service-steps li{display:flex;gap:20px;margin:22px 0}.service-steps li>span{font-size:12px;color:#845232;padding-top:3px}.service-steps strong{font-weight:500}.service-steps p{font-size:14px;color:#53606b;margin:7px 0 0}
.service-works{background:#142440;color:#ede7da;padding:40px clamp(18px,3vw,40px);border:0;margin:15px 0 0}.service-works>p{font-size:13px;color:#d0d0c9}.service-works .cert-kicker{color:#cc9b77}.service-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.works-arrows{display:flex;gap:8px;flex:none}.works-arrows button{font-size:24px;color:#ede7da;background:transparent;border:1px solid #ede7da50;width:44px;height:44px}.works-arrows button:hover{border-color:#bb7c52;color:#d5a07b}.works-arrows button:disabled{opacity:.3;cursor:default}.service-work-filters{display:flex;gap:18px;flex-wrap:wrap;padding:20px 0}.service-work-filters label{font-size:12px;display:flex;gap:8px;align-items:baseline}.service-work-filters .taiga-select{max-width:100%}.service-work-count{font-size:12px!important;margin:15px 0!important}.service-work-rail{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:3px 2px 18px;overscroll-behavior-x:contain}.service-work-rail .work-card{position:relative;flex:0 0 260px;height:340px;scroll-snap-align:start;overflow:hidden;background:#343e3d;color:#ede7da}.service-work-rail .photo{position:absolute;inset:0;border:0;padding:0;background:transparent;width:100%;height:100%}.service-work-rail .photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:filter .5s,transform .5s}.service-work-rail .work-card:hover .photo img{filter:none;transform:scale(1.03)}.service-work-rail .card-meta{position:absolute;bottom:0;left:0;right:0;padding:45px 15px 15px;background:linear-gradient(transparent,#142440ed);pointer-events:none}.service-work-rail .card-meta h3{font-size:22px;margin:0 0 15px;color:#ede7da}.service-work-rail .card-bottom{display:flex;align-items:center;justify-content:space-between;gap:7px}.service-work-rail .author{pointer-events:auto;display:flex;align-items:center;gap:7px;color:#ede7da;background:transparent;border:0;font:11px Golos,Arial,sans-serif;padding:0;max-width:150px;text-align:left;min-height:44px}.service-work-rail .author img{width:29px;height:29px;object-fit:cover;border-radius:50%}.service-work-rail .work-actions{display:flex;pointer-events:auto;gap:5px}.service-work-rail .work-actions button{min-width:36px;min-height:44px;display:flex;align-items:center;gap:3px;background:transparent;border:0;color:#ede7da;padding:0;font-size:10px}.service-work-rail .work-actions svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.service-work-rail .work-actions [aria-pressed=true]{color:#d5a07b}.service-work-rail .work-actions [aria-pressed=true] svg{fill:#bb7c5244}.service-works .service-media{color:#ede7da;border-color:#ede7da50;background:#ede7da08;max-width:600px;margin-top:20px}.service-works .service-media>span{color:#d5a07b}.service-works .service-media figcaption{color:#d0d0c9}
.service-reading{max-width:850px;margin:auto}.service-reading details{border-top:1px solid #14244030;padding:0!important}.service-reading summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;list-style:none;cursor:pointer;font-size:17px;font-weight:500}.service-reading summary::marker,.service-reading summary::-webkit-details-marker{display:none;content:''}.service-reading summary:after,.service-reading summary:before{display:none!important}.disclosure-mark{width:12px;height:12px;position:relative;flex:none}.disclosure-mark:before,.disclosure-mark:after{content:'';position:absolute;background:currentColor;left:0;right:0;top:5px;height:1px}.disclosure-mark:after{transform:rotate(90deg);transition:transform .2s}.service-reading details[open] .disclosure-mark:after{transform:none}.service-reading details>p{margin:0 0 24px}.service-sources{font-size:12px;color:#53606b}.service-sources a{color:#845232;text-underline-offset:3px}.service-price-section{display:grid;grid-template-columns:1.25fr 1fr;gap:9%;margin-top:20px}.service-prices{padding:28px;background:#14244008}.service-prices ul{list-style:none;padding:0;margin:22px 0}.service-prices li{display:flex;justify-content:space-between;gap:18px;margin:0 0 18px;font-size:16px}.service-prices strong{font-weight:600;white-space:nowrap}.service-duration{margin:24px 0}.service-duration dt{font-size:12px;color:#53606b;margin-bottom:6px}.service-duration dd{font-size:22px;margin:0;font-weight:500}.service-related{display:flex;gap:20px;flex-wrap:wrap}.service-related a{color:#142440;min-height:44px;display:flex;align-items:center;text-underline-offset:5px}.service-related a:hover{color:#845232}
.service-gallery{border:1px solid #bb7c5260;background:#142440;color:#ede7da;width:min(700px,92vw);max-height:90dvh;padding:32px;overflow:auto}.service-gallery::backdrop{background:#091321ce;backdrop-filter:blur(6px)}.service-gallery h2{font-size:26px;margin:0 40px 22px 0}.service-gallery img{display:block;max-height:60dvh;width:100%;object-fit:contain}.service-gallery p{font-size:13px;line-height:1.7}.service-gallery-close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:#ede7da;font-size:28px;width:44px;height:44px}.service-page :is(a,button,summary):focus-visible,.service-gallery :focus-visible{outline:2px solid #bb7c52;outline-offset:4px}.service-page button{cursor:pointer}.service-page section[id]{scroll-margin-top:85px}
@media(min-width:1600px){.service-page{padding-top:145px}}
@media(max-width:700px){.service-page{padding:105px 6% 40px}.service-breadcrumbs{font-size:11px;margin-bottom:24px}.service-hero{grid-template-columns:1fr;gap:26px}.service-hero .cert-title{font-size:clamp(34px,9vw,48px);margin:15px 0 20px}.service-lead{font-size:16px;line-height:1.7}.service-hero .portrait{aspect-ratio:16/10}.service-media strong{font-size:20px}.service-media figcaption{font-size:11px}.service-section{padding:32px 0}.service-section p{font-size:15px}.service-about,.service-process,.service-price-section{grid-template-columns:1fr;gap:24px}.service-note{padding-left:18px}.service-note p{font-size:13px}.style-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.tile-media{padding:14px;aspect-ratio:4/5;gap:12px}.tile-media>span{font-size:8px}.tile-media strong{font-size:17px;overflow-wrap:break-word}.tile-media small{font-size:10px}.style-tile h3{font-size:18px;gap:4px}.style-tile p{font-size:12px}.style-categories{gap:22px}.service-process .service-media{position:relative;top:auto}.service-works{padding:26px 16px;margin-inline:-2px}.service-works h2{font-size:27px}.service-section-heading{align-items:start;gap:8px}.works-arrows{gap:1px}.works-arrows button{width:36px;border:0}.service-work-filters{flex-direction:column;gap:12px}.service-work-filters label{justify-content:space-between}.service-work-rail .work-card{flex-basis:230px;height:310px}.service-reading summary{font-size:16px;padding:19px 0}.service-prices{padding:22px}.service-gallery{padding:28px 18px}.service-anchor-nav{gap:22px}.service-price-section .cert-primary,.service-hero .cert-primary{font-size:15px;max-width:100%}.service-media.landscape{min-height:210px;aspect-ratio:auto}}
@media(prefers-reduced-motion:reduce){.service-page *{scroll-behavior:auto!important;transition:none!important}}

/* Haircut: one gentle rail for forms and one for real examples. */
body[data-service-id=haircut] .service-page{overflow-x:clip}
body[data-service-id=haircut] .service-works{position:relative;isolation:isolate;background:transparent;padding:52px 0;margin:15px 0 0}
body[data-service-id=haircut] .service-works::before{content:'';position:absolute;inset:0 auto 0 50%;width:100vw;transform:translateX(-50%);z-index:-1;background:#142440;pointer-events:none}
.service-page [data-auto-carousel]{display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:none;scrollbar-width:none;scroll-behavior:auto;padding:4px 2px 18px;overscroll-behavior-x:contain}
.service-page [data-auto-carousel]::-webkit-scrollbar{display:none}
.service-carousel-group{display:flex;flex:0 0 auto;gap:18px;padding-right:18px;align-items:stretch}
.style-grid .service-carousel-group{gap:22px;padding-right:22px}
.style-grid[data-auto-carousel] .style-tile{flex:0 0 clamp(230px,24vw,300px);width:clamp(230px,24vw,300px);max-width:calc(100vw - 52px);padding:0 0 12px;transition:background .25s}
.style-grid[data-auto-carousel] .style-tile:is(:hover,:focus-visible){background:transparent}.style-grid[data-auto-carousel] .style-tile:focus-visible{outline:2px solid #142440;outline-offset:-2px}
.style-grid[data-auto-carousel] .style-tile:is(:hover,:focus-visible) h3{color:#845232}
.style-grid[data-auto-carousel] .style-tile h3>span{transition:transform .25s}
.style-grid[data-auto-carousel] .style-tile:is(:hover,:focus-visible) h3>span{transform:translateX(3px)}
.service-page .service-carousel-controls{display:flex;align-items:center;gap:10px;flex:none}
.service-page .service-carousel-controls button{border:0;background:transparent;color:inherit;min-width:40px;min-height:44px;font-size:22px;padding:4px}
.service-page .service-carousel-controls button:is([data-style-pause],[data-work-pause]){font-size:12px;min-width:78px}
.service-page .service-carousel-controls button:hover{color:#bb7c52}
.service-page .service-carousel-controls button:disabled{opacity:.35;cursor:default}
.service-work-rail[data-auto-carousel] .work-card::after{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;border:1px solid transparent;transition:border-color .25s}
.service-work-rail[data-auto-carousel] .work-card:is(:hover,:focus-within)::after{border-color:#bb7c52}
.service-work-rail[data-auto-carousel] .work-card:focus-within .photo img{filter:none;transform:scale(1.03)}
@media(max-width:700px){body[data-service-id=haircut] .service-section-heading{flex-wrap:wrap;gap:0}.service-page .service-carousel-controls{margin-left:auto}.style-grid[data-auto-carousel] .tile-media{aspect-ratio:4/3}.style-grid[data-auto-carousel] .style-tile h3{font-size:20px}body[data-service-id=haircut] .service-works{padding:32px 0}}

/* S12/S13: the rail reaches the viewport edges; editorial copy keeps its reading width. */
body[data-service-id=haircut] .service-page [data-full-width-carousel]{width:100vw;max-width:none;margin-inline:calc(50% - 50vw);padding-inline:max(4vw,20px)}
@media(max-width:700px){body[data-service-id=haircut] .service-page [data-full-width-carousel]{padding-inline:6vw}}
