/* Photographs remain uncropped files; each layout controls its visible frame. */
.studio-picture{display:block;width:100%;height:100%}
.studio-picture img{display:block;width:100%;height:100%;object-fit:cover}
.studio-sequence{padding-block:64px}
.studio-sequence-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:30px}
.studio-label{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:#ff5863;margin-bottom:14px}
.studio-sequence h2{font-size:clamp(34px,3.3vw,48px);line-height:1.08}
.studio-sequence-head>p{font-size:16px;line-height:1.8;color:#c8c3cb;max-width:50ch}
.studio-sequence-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.studio-sequence-photo{aspect-ratio:3/2;overflow:hidden;background:#242329}
.studio-sequence figcaption{padding-top:14px;font-size:13px;line-height:1.7;color:#c8c3cb;max-width:60ch}
.ceramic-product-photo{margin:0 0 28px;aspect-ratio:16/10;overflow:hidden}
.ceramic-product-photo img{object-position:50% 55%}
.ceramic-preparation-photos .studio-picture img{height:auto}
@media(max-width:700px){
 .studio-sequence{padding-block:40px}.studio-sequence-head{grid-template-columns:1fr;gap:18px;margin-bottom:24px}
 .studio-sequence-grid{grid-template-columns:1fr;gap:28px}.studio-sequence-photo{aspect-ratio:4/3}
 .studio-sequence-head>p{font-size:15px}.studio-sequence figcaption{font-size:12px}
 .ceramic-product-photo{aspect-ratio:4/3;margin-bottom:24px}
}

/* Shared navigation: stable height keeps the page from jumping while scrolling. */
:root{--nav-height:78px}
html{scroll-padding-top:calc(var(--nav-height) + 20px)}
.site-header.wrap{position:sticky;top:0;z-index:40;height:var(--nav-height);max-width:none;padding-inline:max(var(--gutter),calc((100% - var(--max))/2 + var(--gutter)));background:#15151a;border-bottom:1px solid transparent;transition:background-color .2s,border-color .2s,box-shadow .2s}
.site-header.is-scrolled{background:rgba(21,21,26,.96);border-bottom-color:#ffffff1f;box-shadow:0 6px 25px #08080c26;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.site-header .wordmark.logo img{height:48px;width:auto;transition:transform .2s;transform-origin:left center}
.site-header.is-scrolled .wordmark.logo img{transform:scale(.92)}
.site-header .desktop-nav{gap:28px;font-size:13px}
.desktop-nav>a:not(.nav-phone){position:relative}
.desktop-nav>a:not(.nav-phone)::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;background:#e30613;transform:scaleX(0);transform-origin:left;transition:transform .18s}
.desktop-nav>a:hover,.desktop-nav>a[aria-current='page']{text-decoration:none}
.desktop-nav>a:not(.nav-phone):hover::after,.desktop-nav>a[aria-current='page']::after{transform:scaleX(1)}
.site-header .desktop-nav .nav-phone{margin-left:3px;padding-left:25px;border-left:1px solid #ffffff24;font-size:18px}
/* The document handles the header offset once, including older page-specific anchors. */
main [id]{scroll-margin-top:0}
@media(max-width:1100px){.site-header .desktop-nav{gap:19px}.site-header .desktop-nav .nav-phone{padding-left:17px;font-size:17px}}
@media(max-width:900px){
 :root{--nav-height:68px}
 .site-header .wordmark.logo img{height:39px}
 .site-header.is-scrolled .wordmark.logo img{transform:none}
 .site-header .mobile-menu summary{font-size:13px;min-height:48px;gap:12px}
 .site-header .mobile-nav{top:calc(var(--nav-height) - 1px);padding:12px var(--gutter) 20px;background:#1d1d23;border-bottom:1px solid #ffffff24;box-shadow:0 18px 26px #08080c40;max-height:calc(100vh - var(--nav-height) - 12px);max-height:calc(100dvh - var(--nav-height) - 12px);overflow-y:auto;overscroll-behavior:contain}
 .site-header .mobile-nav a{font-size:18px;min-height:48px;padding-block:10px;border-bottom:1px solid #ffffff10}
 .site-header .mobile-nav a[aria-current='page']{color:#fff;font-weight:600}
 .site-header .mobile-nav a[aria-current='page']::after{content:'';display:inline-block;width:7px;height:7px;background:#ff5360;border-radius:50%;margin-left:13px;vertical-align:middle}
 .site-header .mobile-nav .nav-phone{font-size:21px;border:0;padding-top:17px;margin-top:5px}
 .site-header .menu-glyph{position:relative;display:block;width:23px;height:16px}
 .site-header .menu-glyph::before,.site-header .menu-glyph::after{position:absolute;left:0;top:3px;width:23px;transition:transform .18s}
 .site-header .menu-glyph::after{top:11px}
 .site-header .mobile-menu[open] .menu-glyph::before{transform:translateY(4px) rotate(45deg)}
 .site-header .mobile-menu[open] .menu-glyph::after{transform:translateY(-4px) rotate(-45deg)}
}
@media(prefers-reduced-motion:reduce){.site-header.wrap,.site-header .wordmark.logo img,.desktop-nav a::after,.site-header .menu-glyph::before,.site-header .menu-glyph::after{transition:none}}

/* Native disclosures work with a mouse, touch, keyboard, and without JavaScript. */
.nav-group{position:relative}
.nav-group>summary{position:relative;display:flex;align-items:center;gap:9px;min-height:44px;list-style:none;cursor:pointer;font-size:inherit;font-weight:500}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-chevron{display:block;width:6px;height:6px;border:solid #bdb5c2;border-width:0 1px 1px 0;transform:rotate(45deg) translateY(-2px);transition:transform .18s}
.nav-group[open]>summary .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.desktop-nav>.nav-group>summary::after{content:'';position:absolute;left:0;right:15px;bottom:4px;height:2px;background:#e30613;transform:scaleX(0);transform-origin:left;transition:transform .18s}
.desktop-nav>.nav-group[open]>summary::after,.desktop-nav>.nav-group.has-current>summary::after,.desktop-nav>.nav-group>summary:hover::after{transform:scaleX(1)}
.nav-panel{position:absolute;top:calc(100% + 16px);left:-26px;width:560px;padding:15px 18px 0;background:#202027;border:1px solid #ffffff20;border-top:2px solid #d71f31;box-shadow:0 20px 40px #08080c70;max-height:calc(100vh - var(--nav-height) - 20px);max-height:calc(100dvh - var(--nav-height) - 20px);overflow-y:auto;overscroll-behavior:contain}
.nav-panel-links{display:grid;grid-template-columns:1fr 1fr;gap:3px 14px;padding-bottom:12px}
.site-header .nav-panel-links a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;padding:15px 12px;min-height:80px;font-size:15px;font-weight:600;line-height:1.45;border:0}
.nav-panel-links small{font-size:11px;font-weight:400;line-height:1.6;color:#bcb5c4}
.site-header .nav-panel a:hover,.site-header .nav-panel a[aria-current]{text-decoration:none;background:#ffffff07}
.site-header .nav-panel a[aria-current]>span:first-child{color:#ff8e98}
.site-header .nav-panel .nav-panel-all{display:flex;align-items:center;justify-content:space-between;min-height:53px;padding:10px 12px;border-top:1px solid #ffffff1c;font-size:12px;font-weight:600}
.nav-panel-all>span{font-size:21px;color:#ff7c88}
.nav-group--guides .nav-panel{width:355px;left:auto;right:-34px;padding-bottom:3px}
.nav-group--guides .nav-panel-links{grid-template-columns:1fr;gap:1px;padding-bottom:8px}
.site-header .nav-panel-links a:focus-visible,.site-header .nav-panel-all:focus-visible{outline-offset:-3px}
@media(min-width:901px) and (max-width:1100px){.nav-panel{left:-90px;width:510px}.nav-group--guides .nav-panel{right:-25px}}
@media(max-width:900px){
 .site-header .mobile-nav>.nav-group{border-bottom:1px solid #ffffff10}
 .site-header .mobile-nav .nav-group>summary{font-size:18px;min-height:49px;padding-block:10px;justify-content:space-between}
 .site-header .mobile-nav .nav-group.has-current>summary>span:first-child{color:#ff8e98}
 .site-header .mobile-nav .nav-panel{position:static;width:auto;max-height:none;padding:0 0 10px 12px;margin-block:3px 7px;border:0;border-left:1px solid #a24855;background:transparent;box-shadow:none;overflow:visible}
 .site-header .mobile-nav .nav-panel-links{grid-template-columns:1fr;gap:0;padding:0}
 .site-header .mobile-nav .nav-panel-links a{font-size:15px;min-height:70px;padding:12px 13px;gap:4px}
 .site-header .mobile-nav .nav-panel-links small{font-size:11px}
 .site-header .mobile-nav .nav-panel a[aria-current]::after{display:none}
 .site-header .mobile-nav .nav-panel .nav-panel-all{font-size:12px;padding:12px 13px;margin:5px 0 0;min-height:49px}
}
@media(prefers-reduced-motion:reduce){.nav-chevron,.desktop-nav>.nav-group>summary::after{transition:none}}

/* Shared reviews; overlapping panels reserve the tallest pair's space. */
.ct-reviews{padding-block:42px;background:#1d1d23;border-top:1px solid #343139}
.ct-reviews-grid{display:grid;grid-template-columns:270px minmax(0,1fr);gap:50px;align-items:start}
.ct-reviews-label{color:#c2bac5;margin-bottom:18px;font-size:10px;font-weight:600;letter-spacing:1.4px;text-transform:uppercase}
.ct-reviews-rating{display:flex;gap:16px;align-items:center;color:#fff;width:fit-content;min-height:64px}
.ct-reviews-rating>strong{font:800 56px/1 var(--display);letter-spacing:-.06em}
.ct-reviews-rating>span{display:grid;gap:7px;font-size:11px;line-height:1.5}
.ct-reviews-stars{color:#ff7780;font-size:16px;letter-spacing:2px;white-space:nowrap}
.ct-reviews-rating:hover>span>span:last-child{text-decoration:underline;text-underline-offset:4px}
.ct-reviews-content{min-width:0}
.ct-reviews-source{display:block;width:fit-content;margin-top:16px;font-size:11px;color:#c2bac5;text-decoration:underline;text-underline-offset:3px}
.ct-reviews-stage{display:grid;min-width:0}
.ct-reviews-stage:focus-visible{outline:2px solid #ff8992;outline-offset:8px}
.ct-reviews[data-review-static="true"] .ct-reviews-stage{gap:28px}
.ct-reviews[data-review-static="true"] .ct-reviews-panel{grid-area:auto}
.ct-reviews-panel{grid-area:1/1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .23s ease}
.ct-reviews-panel.is-active{visibility:visible;opacity:1;pointer-events:auto}
.ct-reviews-panel figure{min-width:0;margin:0;padding-left:22px;border-left:1px solid #4a414c}
.ct-reviews-panel blockquote{margin:0}
.ct-reviews-panel blockquote p{font-size:14px;line-height:1.8;color:#e2dce6;margin:0;max-width:none}
.ct-reviews-panel figcaption{font-size:12px;font-weight:600;color:#fff;margin-top:15px}
.ct-reviews--home{background:linear-gradient(110deg,#261e24,#1c1c22 70%);padding-block:46px;border-bottom:1px solid #ffffff17}
.ct-reviews--home .ct-reviews-grid{grid-template-columns:310px minmax(0,1fr);gap:60px}
.ct-reviews--home .ct-reviews-label{font-size:11px;color:#ff8992;margin-bottom:24px}
.ct-reviews--home .ct-reviews-rating{display:grid;gap:12px}
.ct-reviews--home .ct-reviews-rating>strong{font-size:82px}
.ct-reviews--home .ct-reviews-rating>span{font-size:12px}
.ct-reviews--home .ct-reviews-panel{gap:42px}
.ct-reviews--home .ct-reviews-panel figure{border-left:0;border-top:2px solid #a12232;padding:23px 0 0}
.ct-reviews--home .ct-reviews-panel blockquote p{font-size:17px;line-height:1.75}
.ct-reviews--home .ct-reviews-panel figcaption{font-size:13px;margin-top:20px}
.ct-reviews--services{background:#222229}
@media(max-width:1000px){.ct-reviews-grid,.ct-reviews--home .ct-reviews-grid{grid-template-columns:220px minmax(0,1fr);gap:28px}.ct-reviews-panel,.ct-reviews--home .ct-reviews-panel{gap:26px}.ct-reviews--home .ct-reviews-panel blockquote p{font-size:15px}.ct-reviews-rating{gap:11px}.ct-reviews-rating>strong{font-size:48px}}
@media(max-width:800px){.ct-reviews-grid,.ct-reviews--home .ct-reviews-grid{grid-template-columns:1fr;gap:26px}.ct-reviews-summary{display:flex;justify-content:space-between;align-items:center;gap:20px}.ct-reviews-label,.ct-reviews--home .ct-reviews-label{margin:0}.ct-reviews--home .ct-reviews-rating{display:flex;gap:24px}.ct-reviews--home .ct-reviews-rating>strong{font-size:64px}}
@media(max-width:620px){.ct-reviews,.ct-reviews--home{padding-block:32px}.ct-reviews-summary{display:block}.ct-reviews-label,.ct-reviews--home .ct-reviews-label{margin-bottom:13px}.ct-reviews-panel,.ct-reviews--home .ct-reviews-panel{grid-template-columns:1fr;gap:24px}.ct-reviews-panel figure{padding-left:18px}.ct-reviews-panel blockquote p{font-size:14px}.ct-reviews--home .ct-reviews-panel figure{padding-top:18px}.ct-reviews--home .ct-reviews-panel blockquote p{font-size:15px;line-height:1.65}.ct-reviews--home .ct-reviews-panel figcaption{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.ct-reviews-panel{transition:none}}
@media(min-width:621px) and (max-width:800px){.ct-reviews-summary{flex-wrap:wrap}.ct-reviews-source{flex-basis:100%;margin-top:0}}
