:root{
  --graphite-950:#121315;
  --graphite-900:#181a1d;
  --graphite-800:#24262a;
  --ink:#222327;
  --paper:#f5f2ed;
  --paper-2:#ebe6df;
  --line:rgba(34,35,39,.16);
  --light-line:rgba(255,255,255,.14);
  --accent:#c49a6c;
  --accent-soft:#e6cfb4;
  --text-light:#f4f0ea;
  --muted-light:#bbb8b3;
  --muted:#77736d;
  --max:1480px;
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}
a{color:inherit;text-decoration:none}
img{display:block;width:100%;height:100%;object-fit:cover}
button{font:inherit}
.container{width:min(calc(100% - 64px),var(--max));margin-inline:auto}
.eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent)}
.display{font-family:var(--serif);font-weight:400;letter-spacing:.015em;line-height:.92}
.header{position:absolute;inset:0 0 auto;z-index:20;color:var(--text-light);border-bottom:1px solid var(--light-line)}
.header__inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.logo{font-family:var(--serif);font-size:22px;letter-spacing:.13em}
.nav{display:flex;gap:42px;font-size:13px}
.nav a{opacity:.82;transition:.2s}.nav a:hover,.nav a.active{opacity:1;color:var(--accent-soft)}
.menu-btn{display:none;background:none;border:0;color:inherit;font-size:23px}
.hero{min-height:720px;background:radial-gradient(circle at 62% 30%,#34373b 0,#202226 34%,#151618 74%,#101113 100%);color:var(--text-light);padding:120px 0 42px;overflow:hidden}
.hero__grid{display:grid;grid-template-columns:.95fr 1.15fr;gap:70px;align-items:center;min-height:540px}
.hero__copy{padding-left:8vw}
.hero h1{font-size:clamp(58px,6.2vw,104px);margin:20px 0 28px;max-width:650px}
.hero p{color:var(--muted-light);max-width:460px;margin:0 0 32px;font-size:17px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{min-height:52px;padding:0 30px;border:1px solid var(--light-line);display:inline-flex;align-items:center;justify-content:center;gap:24px;text-transform:uppercase;letter-spacing:.08em;font-size:12px;transition:.2s}
.btn--light{background:linear-gradient(120deg,#f2dfc7,#d6ad7e);color:#2a2520;border-color:transparent}.btn:hover{transform:translateY(-2px)}
.hero__mosaic{display:grid;grid-template-columns:1.05fr .95fr;grid-template-rows:1fr 1fr;gap:8px;height:520px}
.hero__mosaic .media{overflow:hidden;background:#24262a}.hero__mosaic .media:first-child{grid-row:1/3}
.hero__mosaic img{transition:transform .65s ease}.hero__mosaic .media:hover img{transform:scale(1.025)}
.section{padding:70px 0}.section--light{background:linear-gradient(180deg,#f7f5f1 0,#efebe5 100%)}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}
.section h2{font-family:var(--serif);font-size:46px;font-weight:400;margin:0;letter-spacing:.04em}
.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}
.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.category-card{display:block}.category-card__image{aspect-ratio:4/3;overflow:hidden;background:#ddd}.category-card__title{font-family:var(--serif);font-size:20px;letter-spacing:.08em;margin-top:13px;text-transform:uppercase}.category-card__meta{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;margin-top:4px}
.utility{display:grid;grid-template-columns:280px 1fr 1fr;gap:34px;align-items:stretch;margin-top:60px}
.utility__lead{padding:18px 0}.utility__lead h3{font-family:var(--serif);font-size:34px;font-weight:400;margin:0 0 34px;line-height:1.05}.utility__card{min-height:190px;border:1px solid var(--line);padding:34px;background:rgba(255,255,255,.3);display:flex;flex-direction:column;justify-content:space-between}.utility__card h3{font-family:var(--serif);font-weight:400;font-size:27px;margin:0}.utility__card p{max-width:390px;color:var(--muted);font-size:14px}
.dark-section{background:linear-gradient(145deg,#17191c,#282a2e 58%,#1b1d20);color:var(--text-light);padding:100px 0}
.dark-section p{color:var(--muted-light)}
.page-hero{padding:135px 0 60px;background:linear-gradient(145deg,#17191c,#292b2f);color:var(--text-light)}.page-hero h1{font-size:clamp(58px,7vw,104px);margin:16px 0 18px}.page-hero p{max-width:620px;color:var(--muted-light)}
.filters{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0}.filter{border:1px solid var(--line);background:transparent;padding:11px 18px;cursor:pointer}.filter.active{background:var(--ink);color:white}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work{background:#ddd;aspect-ratio:4/3;overflow:hidden;position:relative}.work img{transition:.35s}.work:hover img{transform:scale(1.025)}
.work.is-hidden{display:none}
.jewelry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.jewelry-grid .work{aspect-ratio:1/1}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{padding:36px;border:1px solid var(--line);min-height:260px}.service-card h3{font-family:var(--serif);font-weight:400;font-size:28px;margin:20px 0 12px}.service-card p{color:var(--muted);font-size:14px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step{border-top:1px solid var(--line);padding-top:24px}.step__num{font-family:var(--serif);font-size:36px;color:var(--accent)}.step h3{font-size:15px;text-transform:uppercase;letter-spacing:.1em}.step p{font-size:14px;color:var(--muted)}
.about-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:center}.about-image{aspect-ratio:4/5}.about-copy h2{font-size:54px}.about-copy p{color:var(--muted);max-width:690px}
.footer{background:#111214;color:var(--text-light);padding:70px 0 32px}.footer__grid{display:grid;grid-template-columns:1.3fr .7fr;gap:40px}.footer h2{font-family:var(--serif);font-size:52px;font-weight:400;margin:0 0 24px}.footer p{color:var(--muted-light)}.footer__links{display:grid;gap:12px;align-content:start;justify-content:end}.footer__bottom{margin-top:54px;padding-top:20px;border-top:1px solid var(--light-line);display:flex;justify-content:space-between;color:#858585;font-size:12px}
@media(max-width:1100px){.hero__grid{grid-template-columns:1fr;gap:42px}.hero__copy{padding-left:0}.hero__mosaic{height:480px}.category-grid{grid-template-columns:repeat(3,1fr)}.utility{grid-template-columns:1fr 1fr}.utility__lead{grid-column:1/-1}.portfolio-grid{grid-template-columns:repeat(2,1fr)}.jewelry-grid{grid-template-columns:repeat(3,1fr)}.services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.container{width:min(calc(100% - 32px),var(--max))}.header__inner{height:66px}.nav{display:none}.nav.open{position:absolute;top:66px;left:0;right:0;background:#151619;padding:28px 24px;display:grid;gap:22px}.menu-btn{display:block}.hero{padding-top:100px;min-height:auto}.hero h1{font-size:56px}.hero__mosaic{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto}.hero__mosaic .media{aspect-ratio:3/4}.hero__mosaic .media:first-child{grid-row:1/3}.section{padding:52px 0}.section h2{font-size:38px}.category-grid{display:flex;overflow:auto;padding-bottom:12px;scroll-snap-type:x mandatory}.category-card{min-width:72vw;scroll-snap-align:start}.utility{grid-template-columns:1fr}.portfolio-grid,.jewelry-grid,.services-grid,.steps,.about-grid,.footer__grid{grid-template-columns:1fr}.footer__links{justify-content:start}.footer__bottom{display:grid;gap:8px}.page-hero{padding-top:110px}}

/* The watermark is a display layer; the original photo bytes stay unchanged. */
.watermarked{position:relative;container-type:inline-size}
.watermarked::after{content:"SM | SVETA MEDVEDEVA";position:absolute;left:0;right:0;bottom:28%;text-align:center;white-space:nowrap;color:rgba(255,255,255,.18);text-shadow:0 1px 2px rgba(0,0,0,.12);font-family:Arial,Helvetica,sans-serif;font-size:5cqw;font-weight:500;letter-spacing:.08em;line-height:1.2;pointer-events:none}
.work--wedding{aspect-ratio:auto;align-self:start}
.work--wedding img{height:auto;object-fit:contain}
.work--wedding:hover img{transform:none}
.photo-page{background:#121315;color:#f4f0ea}
.photo-page main{padding:24px 16px 40px}
.photo-back{display:block;width:fit-content;margin:0 auto 20px;padding:10px 16px;border:1px solid rgba(255,255,255,.25)}
.photo-full{width:min(100%,760px);margin:0 auto}
.photo-full img{width:100%;height:auto;object-fit:contain}
/* Collections lead to projects; complete series live on their own pages. */
.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}
.collection-grid .category-card__image{aspect-ratio:4/3}
.collection-grid .category-card__title{font-size:clamp(24px,3vw,38px);line-height:1.15;text-transform:none;letter-spacing:0;margin:18px 0 8px}
.collection-grid .category-card__meta{font-size:14px;text-transform:none;letter-spacing:0}
.back-link{display:inline-block;margin-bottom:22px;font-size:14px;color:var(--accent-soft)}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.project-gallery .work{aspect-ratio:auto;background:transparent}
.project-gallery .work img{height:auto;object-fit:contain}
.project-gallery .work:hover img{transform:none}
.project-video{grid-column:1/-1;background:#121315}
.project-video video{display:block;width:100%;max-height:85vh}
@media(max-width:720px){.collection-grid,.project-gallery{grid-template-columns:1fr;gap:30px}.collection-grid .category-card{min-width:0}.page-hero h1{font-size:clamp(36px,8vw,58px);overflow-wrap:anywhere}}
.direct-gallery{columns:2;column-gap:24px}
.direct-gallery .work{display:block;break-inside:avoid;aspect-ratio:auto;margin-bottom:24px;background:transparent}
.direct-gallery .work img{height:auto;object-fit:contain}
.direct-gallery .work:hover img{transform:none}
.video-card{margin:0 0 28px;break-inside:avoid}
.video-card video{display:block;width:100%;max-height:75vh;background:#121315}
.video-card figcaption{padding-top:10px;font-size:14px;color:var(--muted)}
.photo-viewer{border:0;padding:48px 16px 16px;background:#121315;max-width:96vw;max-height:96vh;color:white}
.photo-viewer::backdrop{background:rgba(0,0,0,.88)}
.photo-viewer figure{margin:0;width:fit-content;max-width:100%}
.photo-viewer img{width:auto;height:auto;max-width:88vw;max-height:80vh;object-fit:contain}
.viewer-close{position:absolute;right:10px;top:4px;background:none;border:0;color:white;font-size:32px;cursor:pointer;width:44px;height:44px}
@media(max-width:720px){.direct-gallery{columns:1}}
/* Persistent navigation and compact collection browsing. */
.with-sidebar{padding-left:238px}
.sidebar{position:fixed;inset:0 auto 0 0;width:238px;height:100dvh;background:#17191c;border-right:1px solid rgba(255,255,255,.12);border-bottom:0;overflow-y:auto}
.sidebar .header__inner{height:auto;display:block;padding:42px 26px}
.sidebar .logo{display:block;font-size:21px;line-height:1.4;letter-spacing:.08em;margin-bottom:44px}
.sidebar .nav{display:flex;flex-direction:column;gap:20px;font-size:14px}
.sidebar-categories{display:flex;flex-direction:column;gap:15px;padding:0 0 8px 16px;border-left:1px solid rgba(255,255,255,.14)}
.sidebar .nav a.active{color:#e6cfb4;opacity:1}
.sidebar .menu-btn{display:none}
.with-sidebar .container{width:min(calc(100% - 56px),1200px)}
.with-sidebar .page-hero{padding:60px 0 38px}
.with-sidebar .page-hero h1{font-size:clamp(38px,5vw,72px)}
.with-sidebar .section{padding:40px 0}
.with-sidebar .hero__copy{padding-left:0}
.with-sidebar .hero__grid{gap:32px}
.direct-gallery{columns:3;column-gap:18px}
.direct-gallery .work{margin-bottom:18px}
.video-card{margin-bottom:22px}
.video-card video{height:220px;max-height:38vh;object-fit:contain;background:#121315}
.video-card figcaption{font-size:13px}
.photo-viewer{position:fixed;inset:0;margin:auto;width:94vw;height:92dvh;max-width:1400px;max-height:92dvh;padding:48px 20px 20px;box-sizing:border-box;overflow:hidden}
.photo-viewer[open]{display:flex;align-items:center;justify-content:center}
.photo-viewer figure{display:flex;align-items:center;justify-content:center;width:auto;height:100%;max-width:100%;min-width:0;container-type:normal}
.photo-viewer img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.photo-viewer figure.watermarked::after{font-size:clamp(14px,3vw,40px)}
@media(max-width:1150px){.direct-gallery{columns:2}.with-sidebar .hero__grid{grid-template-columns:1fr}}
@media(max-width:760px){
 .with-sidebar{padding-left:0;padding-top:72px}
 .sidebar{inset:0 0 auto;width:100%;height:auto;overflow:visible}
 .sidebar .header__inner{padding:14px 20px;display:flex;justify-content:space-between;align-items:center}
 .sidebar .logo{margin:0;font-size:14px;line-height:1.4}
 .sidebar .menu-btn{display:block}
 .sidebar .nav{display:none}
 .sidebar .nav.open{display:flex;position:absolute;top:72px;left:0;right:0;max-height:calc(100dvh - 72px);overflow-y:auto;padding:24px;background:#17191c;gap:18px}
 .with-sidebar .container{width:calc(100% - 32px)}
 .direct-gallery{columns:2;column-gap:12px}
 .direct-gallery .work{margin-bottom:12px}
 .video-card video{height:150px}
 .photo-viewer{width:96vw;padding:48px 10px 12px}
}
@media(max-width:440px){.direct-gallery:has(.video-card){columns:1}.video-card video{height:220px}}
/* Each series occupies its own rows, in reading order. */
.series-list{display:grid;gap:40px}
.series-title{font-family:var(--sans)!important;font-size:18px!important;letter-spacing:0!important;margin:0 0 18px!important}
.series-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.series-grid .work{display:block;aspect-ratio:auto;background:transparent}
.series-grid .work img{height:auto;object-fit:contain}
.series-grid .work:hover img{transform:none}
.direct-gallery{columns:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
@media(max-width:1150px){.series-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.series-grid{gap:12px}.direct-gallery{grid-template-columns:1fr}.series-title{font-size:16px!important}}
.services-grid .service-card{padding:28px}
.services-grid .service-card h2{font-size:30px;line-height:1.15;letter-spacing:0}
.services-grid .service-price{color:var(--ink);font-size:18px;font-weight:600;margin:18px 0}
.service-card ul{padding-left:20px;font-size:15px;line-height:1.6}
.service-card li{margin-bottom:10px}
.service-contact{margin-top:32px}
@media(min-width:761px) and (max-width:1200px){.services-grid{grid-template-columns:1fr}}@media(min-width:1101px){.utility{grid-template-columns:repeat(3,1fr)}.utility__lead{grid-column:1/-1}}
/* Homepage: selected images only; categories remain in the sidebar. */
.with-sidebar .container{width:calc(100% - 64px);max-width:none}
.home-selection{padding:38px 0 56px}
.home-intro{margin-bottom:30px}
.home-intro h1{font-family:var(--serif);font-size:clamp(28px,3vw,48px);font-weight:400;line-height:1.15;margin:0 0 10px}
.home-intro p{margin:0;color:var(--muted);font-size:16px}
.home-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.home-gallery .work{display:block;aspect-ratio:auto;background:transparent}
.home-gallery .work img{height:auto;object-fit:contain}
.home-gallery .work:hover img{transform:none}
@media(max-width:760px){.with-sidebar .container{width:calc(100% - 32px)}.home-gallery{gap:14px}.home-selection{padding-top:26px}}
@media(max-width:540px){.home-gallery{grid-template-columns:1fr}}
/* A quiet, light portfolio with imagery taking the main space. */
:root{--paper:#fff;--paper-2:#f7f7f7;--ink:#262626;--muted:#757575;--accent:#666;--accent-soft:#333}
body{background:#fff;color:#262626}
.with-sidebar{padding-left:240px}
.sidebar{width:240px;background:#fff;color:#262626;border:0}
.sidebar .header__inner{padding:42px 28px}
.sidebar .logo{font-family:Arial,Helvetica,sans-serif;font-size:19px;font-weight:400;letter-spacing:.13em;line-height:1.45;margin-bottom:44px}
.sidebar .nav{font-size:15px;gap:23px}
.sidebar .nav a{opacity:1;color:#555}
.sidebar .nav a.active{color:#111;text-decoration:underline;text-underline-offset:5px}
.sidebar .nav a:hover{color:#000}
.sidebar-categories{border:0;padding-left:0;gap:13px}
.with-sidebar .container{width:calc(100% - 72px);max-width:1600px}
.home-selection{padding:38px 0 60px}
.home-intro{margin-bottom:30px}
.home-intro h1{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:.15em;font-size:clamp(24px,3vw,42px)}
.home-intro p{font-size:12px;letter-spacing:.4em;color:#555;margin-top:12px}
.home-lead{display:block;width:100%;height:min(66vh,720px);margin:0 0 28px;background:#f5f5f5;overflow:hidden}
.home-lead img{width:100%;height:100%;object-fit:contain}
.home-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.home-gallery .work{margin:0}
.home-gallery .work img{height:auto;width:100%;object-fit:contain}
.page-hero{background:#fff;color:#262626}
.with-sidebar .page-hero{padding:44px 0 22px}
.page-hero p{color:#757575}
.page-hero .eyebrow{color:#757575}
.page-hero .display{font-family:Arial,Helvetica,sans-serif;font-size:clamp(32px,4vw,52px);letter-spacing:0;line-height:1.15}
.back-link{color:#777}
.section--light{background:#fff}
.with-sidebar .section{padding:24px 0 55px}
.series-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.series-list{gap:44px}
.series-title{font-weight:400;color:#555}
.collection-grid .category-card__title{font-family:Arial,Helvetica,sans-serif;font-size:26px}
.footer{background:#fff;color:#262626;padding:24px 0 32px;border-top:1px solid #eee}
.footer h2{font-family:Arial,Helvetica,sans-serif;font-size:28px}
.footer p{color:#777}
.footer__bottom{border-color:#eee;margin-top:24px}
.footer__links{font-size:14px}
.service-card{border-color:#e6e6e6}
.btn--light{background:#262626;color:white}
.video-card video{height:auto;max-height:520px}
@media(max-width:1100px){.home-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.with-sidebar .container{width:calc(100% - 44px)}}
@media(max-width:760px){
 .with-sidebar{padding-left:0;padding-top:76px}
 .sidebar{width:100%;border-bottom:1px solid #eee}
 .sidebar .header__inner{padding:14px 20px}
 .sidebar .logo{font-size:14px;margin:0}
 .sidebar .menu-btn{color:#222}
 .sidebar .nav.open{background:#fff;top:76px}
 .with-sidebar .container{width:calc(100% - 32px)}
 .home-intro h1{font-size:24px;letter-spacing:.08em}
 .home-lead{height:auto}
 .home-lead img{height:auto}
 .home-gallery{gap:16px}
 .series-grid{gap:16px}
}
@media(max-width:540px){.home-gallery,.series-grid{grid-template-columns:1fr}}
/* Final approved palette: dark graphite, restrained warm text. */
:root{--paper:#191a1c;--paper-2:#222326;--ink:#efede9;--muted:#b8b5af;--accent:#c8b79f;--accent-soft:#e1cfb5;--line:rgba(255,255,255,.16)}
body{background:#191a1c;color:#efede9}
.sidebar{background:#151618;color:#efede9;border-right:1px solid rgba(255,255,255,.08)}
.sidebar .nav a{color:#c7c3bd}
.sidebar .nav a.active,.sidebar .nav a:hover{color:#fff}
.sidebar .logo{color:#efede9}
.home-intro .creator-label{color:#b8b5af}
.creator-copy{max-width:880px;margin-top:26px}
.creator-copy h2{font-family:var(--serif);font-size:clamp(24px,2.4vw,34px);font-weight:400;line-height:1.2;margin:0 0 16px}
.home-intro .creator-copy p{font-size:16px;line-height:1.65;letter-spacing:0;color:#c7c3bd;margin:0 0 12px}
.home-lead{background:#151618}
.page-hero,.section--light{background:#191a1c;color:#efede9}
.page-hero p,.page-hero .eyebrow,.back-link,.series-title{color:#b8b5af}
.footer{background:#151618;color:#efede9;border-top-color:rgba(255,255,255,.1)}
.footer p{color:#b8b5af}
.footer__bottom{border-color:rgba(255,255,255,.12);color:#aaa69f}
.service-card{border-color:rgba(255,255,255,.16)}
.btn--light{background:#dfc7a8;color:#201d19}
@media(max-width:760px){.sidebar{border-bottom-color:rgba(255,255,255,.12)}.sidebar .nav.open{background:#151618}.sidebar .menu-btn{color:#efede9}}
.cat-video{width:fit-content;max-width:100%;margin-inline:auto}
.cat-video video{width:auto;max-width:100%;height:auto;max-height:520px}

.home-carousel{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#777 #202124;padding-bottom:16px}
.carousel-slide{display:block;flex:0 0 auto;width:auto;height:min(64vh,740px);scroll-snap-align:start;background:#151618;position:relative}
.carousel-slide img{width:auto;height:100%;max-width:calc(100vw - 330px);object-fit:contain}
.carousel-slide.watermarked{container-type:normal}
.carousel-slide.watermarked::after{font-size:clamp(14px,1.7vw,26px)}
.carousel-tools{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;color:#bbb}
.carousel-tools button{background:transparent;color:#eee;border:1px solid #555;border-radius:0;width:48px;height:40px;margin-left:8px;cursor:pointer;font-size:23px}
.carousel-tools button:disabled{opacity:.3;cursor:default}
.contacts-page{padding-top:55px}
.contacts-page .footer{background:transparent;border:0}
.contacts-page .footer__grid{grid-template-columns:1fr}
.contacts-page .footer__links{justify-content:start;font-size:18px;gap:20px}
@media(max-width:760px){.carousel-slide{height:58vh}.carousel-slide img{max-width:calc(100vw - 40px)}.home-carousel{gap:16px}.contacts-page{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.home-carousel{scroll-behavior:auto}}/* One image-relative watermark across galleries, carousel and viewer. */
.watermarked{container-type:normal}
.watermarked::after,.carousel-slide.watermarked::after,.photo-viewer figure.watermarked::after{left:var(--wm-left,0px);right:auto;top:var(--wm-top,72%);bottom:auto;width:var(--wm-width,100%);font-size:var(--wm-font,0px);transform:translateY(-100%)}

.home-video video{display:block;width:auto;height:100%;max-width:calc(100vw - 330px);object-fit:contain}
@media(max-width:760px){.home-video video{max-width:calc(100vw - 40px)}}

/* Intro video beside the copy, photo gallery below. */
.home-intro-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px;align-items:center;margin-bottom:40px}
.home-intro-layout .home-intro{min-width:0;margin-bottom:0}
.home-intro-video{position:relative;width:100%;min-width:0;background:#151618;overflow:hidden}
.home-intro-video video{display:block;width:100%;height:auto;max-width:100%;max-height:720px;object-fit:contain}
@media(max-width:1000px){.home-intro-layout{grid-template-columns:1fr;gap:24px}.home-intro-video{max-width:640px;margin-inline:auto}}

/* Fit the home video frame to the media's intrinsic proportions. */
.home-intro-layout .home-intro-video{width:fit-content;max-width:100%;justify-self:center;background:transparent}
.home-intro-layout .home-intro-video video{display:block;width:auto;height:auto;max-width:100%;max-height:720px;object-fit:contain}

/* Keep two photographs inside the available page width. */
.home-selection,.home-selection > .container{min-width:0;max-width:100%;box-sizing:border-box}
.home-carousel{width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow-x:auto}
.home-carousel .carousel-slide{flex:0 0 calc((100% - 24px)/2);width:calc((100% - 24px)/2);min-width:0;height:auto;aspect-ratio:3/4;overflow:hidden}
.home-carousel .carousel-slide img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
@media(max-width:760px){.home-carousel .carousel-slide{flex-basis:calc((100% - 16px)/2);width:calc((100% - 16px)/2)}}
/* Main navigation hierarchy. */
.sidebar .nav > a{font-size:18px;font-weight:650;letter-spacing:.015em;color:#efede9;padding-block:10px}
.sidebar .sidebar-categories{margin:2px 0 16px 7px;padding:4px 0 4px 16px;border-left:1px solid rgba(255,255,255,.2)}
.sidebar .sidebar-categories a{font-size:14px;font-weight:400;letter-spacing:0;color:#aaa7a2;padding-block:7px}
.sidebar .sidebar-categories a.active{color:#fff;font-weight:500}
.sidebar .nav > a.active{color:#dfc7a8}
@media(max-width:760px){.sidebar .nav > a{font-size:17px}.sidebar .sidebar-categories a{font-size:14px}}
.home-carousel .carousel-slide{aspect-ratio:auto;height:clamp(180px,32vw,420px)}
.carousel-tools{max-width:100%;box-sizing:border-box}

/* Portrait frames for every selected photograph. */
.home-carousel .carousel-slide{height:auto;aspect-ratio:3/4}
.home-carousel .carousel-slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.sidebar .logo{display:flex;align-items:center;gap:7px;white-space:nowrap;font-family:Arial,sans-serif;font-size:12px;line-height:1.3;letter-spacing:.02em}
.sidebar .logo-initials{font-size:21px;font-weight:600}
.sidebar .logo-divider{font-size:21px;font-weight:300;color:#aaa7a2}
.sidebar .logo-name{font-size:11px;font-weight:500;letter-spacing:.04em}
/* Equal lettering on both sides of the logo separator. */
.sidebar .logo .logo-name{font-family:inherit;font-size:21px;font-weight:600;letter-spacing:inherit}
.sidebar .logo{flex-wrap:wrap;white-space:normal;gap:7px}
.sidebar .logo .logo-name{white-space:nowrap}
/* Keep the complete logo on one line within the sidebar. */
.sidebar .logo{display:flex;flex-wrap:nowrap;align-items:center;gap:5px;white-space:nowrap;font-family:Arial,sans-serif;font-size:13px;letter-spacing:0;max-width:100%}
.sidebar .logo .logo-initials,.sidebar .logo .logo-name,.sidebar .logo .logo-divider{font-family:inherit;font-size:13px;line-height:1.3;letter-spacing:0;white-space:nowrap;flex-shrink:0}
.sidebar .logo .logo-initials,.sidebar .logo .logo-name{font-weight:600}
/* Larger one-line identity with space reserved for the sidebar. */
@media(min-width:761px){.with-sidebar{padding-left:350px}.sidebar{width:350px}.sidebar .header__inner{padding:42px 24px}}
.sidebar .logo{font-size:20px;gap:7px}
.sidebar .logo .logo-initials,.sidebar .logo .logo-name,.sidebar .logo .logo-divider{font-size:20px}
@media(max-width:760px){.sidebar .logo{gap:5px}.sidebar .logo .logo-initials,.sidebar .logo .logo-name,.sidebar .logo .logo-divider{font-size:clamp(15px,4.2vw,20px)}}
/* Compact homepage composition. */
.home-selection{padding-top:24px;padding-bottom:28px}
.home-selection > .container{max-width:1050px}
.home-intro-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:24px;margin-bottom:18px}
.home-intro-layout .home-intro{padding:0;margin:0}
.home-intro-layout .home-intro h1{font-size:clamp(28px,3vw,44px);margin-bottom:8px}
.home-intro-layout .creator-copy{margin-top:16px}
.home-intro-layout .creator-copy h2{font-size:24px;margin-bottom:12px}
.home-intro-layout .creator-copy p{font-size:15px;line-height:1.5;margin-bottom:10px}
.home-intro-layout .home-intro-video video{max-height:clamp(280px,43vh,430px)}
.home-selection .carousel-tools{max-width:540px;margin:0 auto 8px}
.home-selection .home-carousel{max-width:540px;margin-inline:auto;gap:12px;padding-bottom:8px}
.home-selection .home-carousel .carousel-slide{flex:0 0 calc((100% - 12px)/2);width:calc((100% - 12px)/2);height:auto;aspect-ratio:3/4}
@media(min-width:1001px){.home-selection .home-carousel,.home-selection .carousel-tools{max-width:min(540px,42vh)}}
@media(max-width:1000px){.home-intro-layout{grid-template-columns:1fr;gap:16px}.home-intro-layout .home-intro-video video{max-height:340px}}
/* Bring the homepage introduction closer to the sidebar identity. */
@media(min-width:761px){
 .with-sidebar{padding-left:310px}
 .sidebar{width:310px}
 .sidebar .header__inner{padding-left:16px;padding-right:12px}
 .with-sidebar .home-selection > .container{width:calc(100% - 24px);margin-left:12px;margin-right:12px}
}

/* Centered work-first homepage at every viewport width. */
.with-sidebar .home-selection{padding:32px 0 48px}
.with-sidebar .home-selection > .container{width:calc(100% - 48px);max-width:960px;margin-inline:auto}
.home-selection > .container > .home-intro-video{width:100%;max-width:none;margin:0 0 24px;background:transparent}
.home-selection > .container > .home-intro-video video{display:block;width:100%;height:auto;max-width:100%;max-height:none;aspect-ratio:16/9;object-fit:contain}
.home-selection .carousel-tools{width:100%;max-width:none;margin:0 0 12px}
.home-selection .home-carousel{width:100%;max-width:none;margin:0;gap:20px;padding-bottom:12px}
.home-selection .home-carousel .carousel-slide{flex:0 0 calc((100% - 20px)/2);width:calc((100% - 20px)/2);height:auto;aspect-ratio:3/4}
.home-selection > .container > .home-intro{max-width:760px;margin:40px auto 0;padding:0}
.home-selection .creator-copy{margin-top:20px}
@media(max-width:760px){.with-sidebar .home-selection > .container{width:calc(100% - 32px)}.home-selection .home-carousel{gap:12px}.home-selection .home-carousel .carousel-slide{flex-basis:calc((100% - 12px)/2);width:calc((100% - 12px)/2)}}

/* One continuous homepage surface, navigation beside the work. */
.home-unified{background:#191a1c}
.home-unified .sidebar{background:#191a1c;border:0}
.home-unified .sidebar .logo{display:none}
.home-brand{margin:0 0 26px}
.home-brand h1{font-family:Arial,sans-serif;font-size:clamp(24px,3.4vw,48px);font-weight:600;line-height:1.15;letter-spacing:.015em;margin:0 0 12px}
.home-brand h1 span{font-weight:300;color:#b8b5af}
.home-brand p{font-size:14px;letter-spacing:.2em;color:#b8b5af;margin:0}
@media(min-width:761px){
 .home-unified{padding-left:0}
 .home-unified .sidebar{left:max(0px,calc((100vw - 1220px)/2));width:220px}
 .home-unified .sidebar .header__inner{padding:140px 12px 32px 20px}
 .home-unified .home-selection{margin-left:max(220px,calc((100vw - 1220px)/2 + 220px));margin-right:max(20px,calc((100vw - 1220px)/2));padding-top:32px}
 .home-unified .home-selection > .container{width:100%;max-width:960px;margin:0}
}
@media(max-width:760px){
 .home-unified .sidebar .logo{display:flex}
 .home-unified .sidebar .nav.open{background:#191a1c}
 .home-brand h1{font-size:clamp(21px,5.6vw,38px)}
}

/* Shared page shell matching the homepage. */
.site-unified{background:#191a1c}
.site-unified .sidebar{background:#191a1c;border:0}
.site-unified .sidebar .logo{display:none}
.site-content{min-width:0}
.brand-title{display:block;font-family:Arial,sans-serif;font-size:clamp(24px,3.4vw,48px);font-weight:600;line-height:1.15;letter-spacing:.015em;color:#efede9;text-decoration:none;margin:0 0 12px}
.brand-title span{font-weight:300;color:#b8b5af}
.site-unified .site-content .container{width:100%;max-width:none;margin:0}
.site-unified .page-hero{padding:12px 0 24px;background:transparent}
.site-unified .section{padding:0 0 32px;background:transparent}
.site-unified .footer{background:transparent}
.site-unified .contacts-page{padding-top:12px}
.site-unified .contacts-page .footer{padding-top:0}
.site-unified .service-card{background:transparent;padding:24px;min-width:0}
@media(min-width:761px){
 .site-unified{padding-left:0}
 .site-unified .sidebar{left:max(0px,calc((100vw - 1220px)/2));width:220px}
 .site-unified .sidebar .header__inner{padding:140px 12px 32px 20px}
 .site-unified .site-content{margin-left:max(220px,calc((100vw - 1220px)/2 + 220px));margin-right:max(20px,calc((100vw - 1220px)/2));padding-top:32px;max-width:960px}
}
@media(max-width:760px){
 .site-unified .sidebar .logo{display:flex}
 .site-unified .sidebar .nav.open{background:#191a1c}
 .site-unified .site-content{width:calc(100% - 32px);margin-inline:auto;padding-top:32px}
 .brand-title{font-size:clamp(21px,5.6vw,38px)}
}
@media(min-width:761px) and (max-width:1050px){.site-unified .services-grid{grid-template-columns:1fr}}
/* Lighter identity spanning the navigation and content columns. */
.home-brand h1,.home-brand .brand-title{font-weight:400}
.home-brand > p{font-size:18px;letter-spacing:.18em;text-align:center}
@media(min-width:761px){
 .home-unified .home-brand,.site-unified .home-brand{margin-left:-200px;width:calc(100% + 200px)}
}
/* Subtle shared watermark. */
.watermarked::after{color:rgba(255,255,255,.09);text-shadow:none}
/* Keep the identity above the fixed navigation background. */
@media(min-width:761px){
 .home-unified .home-brand,.site-unified .home-brand{position:relative;z-index:21}
}
/* Center the subtitle beneath the lettering rather than the page. */
.home-unified .home-brand,.site-unified .home-brand{width:max-content;max-width:100%}
.home-brand > p{text-align:center}
.home-brand h1,.home-brand .brand-title{white-space:nowrap}
@media(min-width:761px){.home-unified .home-brand,.site-unified .home-brand{max-width:calc(100% + 200px)}}

.service-process{margin-top:48px;max-width:760px}.service-process>h2{font-size:28px;font-weight:500;margin:32px 0 18px}.service-process ol{padding-left:24px}.service-process li{padding:0 0 18px 8px}.service-process h3{font-size:19px;margin:0 0 8px;font-weight:500}.service-process p{font-size:16px;line-height:1.65;color:#c7c7c7;margin:0}.service-process li::marker{color:#cfad80}
/* Keep the identity and section navigation in place while work scrolls. */
@media(min-width:761px){
 .home-unified .home-brand,.site-unified .home-brand{
  position:fixed;top:32px;left:max(20px,calc((100vw - 1220px)/2 + 20px));
  margin:0;width:max-content;max-width:calc(100vw - 40px);z-index:21;isolation:isolate;
 }
 .home-unified .home-brand::before,.site-unified .home-brand::before{
  content:"";position:fixed;top:0;left:0;right:0;height:128px;background:#191a1c;z-index:-1;pointer-events:none;
 }
 .home-unified .home-selection,.site-unified .site-content{padding-top:140px}
 .home-unified .sidebar,.site-unified .sidebar{position:fixed}
}
/* Warm black and orange identity across the portfolio. */
:root{--accent:#ff963d;--accent-soft:#ffbb75;--paper:#11100f;--paper-2:#1c1713;--line:rgba(255,166,82,.18)}
body.home-unified,body.site-unified{
 background-color:#11100f;
 background-image:radial-gradient(ellipse at 94% 8%,rgba(177,72,12,.17),transparent 48%),radial-gradient(ellipse at 2% 85%,rgba(137,66,16,.10),transparent 45%),linear-gradient(145deg,#171310,#0d0e10 65%);
 background-attachment:fixed;color:#f5f0e9;
}
.home-unified .sidebar,.site-unified .sidebar{background:transparent}
.home-brand h1 span,.home-brand .brand-title span,.logo-divider{color:#ff963d}
.home-brand>p{color:#dda570}
.sidebar .nav>a.active,.sidebar .sidebar-categories a.active{color:#ffad62}
.sidebar .nav a:hover{color:#ffc38b}
.sidebar .sidebar-categories{border-left-color:rgba(255,150,61,.32)}
.btn--light{background:linear-gradient(120deg,#ffad54,#f78330);color:#211207;border:1px solid #ffa955;box-shadow:0 5px 22px rgba(240,112,20,.12);transition:background .2s,box-shadow .2s}
.btn--light:hover{background:#ffb970;box-shadow:0 6px 25px rgba(240,112,20,.22)}
.carousel-tools button{border-color:rgba(255,150,61,.35);color:#ffb36f;background:rgba(255,150,61,.04)}
.carousel-tools button:hover{background:rgba(255,150,61,.14)}
.site-unified .service-card{background:linear-gradient(140deg,rgba(255,150,61,.07),rgba(255,255,255,.015));border:1px solid rgba(255,170,95,.2);border-radius:10px}
.service-price,.service-process li::marker{color:#ffad62}
.site-unified .page-hero .eyebrow{color:#ffad62}
.site-unified .footer{border-color:rgba(255,150,61,.18)}
a:focus-visible,button:focus-visible{outline:2px solid #ffad62;outline-offset:5px}
@media(min-width:761px){
 .home-unified .home-brand::before,.site-unified .home-brand::before{background:linear-gradient(105deg,#15120f 35%,#20170f);border-bottom:1px solid rgba(255,150,61,.1)}
}
@media(max-width:760px){
 .home-unified .sidebar,.site-unified .sidebar,.home-unified .sidebar .nav.open,.site-unified .sidebar .nav.open{background:#17130f;border-bottom-color:rgba(255,150,61,.18)}
}
/* Photo navigation without closing the full-image viewer. */
body.viewer-is-open{overflow:hidden}
.photo-viewer{background:#11100f;color:#fff;border:1px solid rgba(255,150,61,.25);padding:52px 66px 44px}
.photo-viewer::backdrop{background:rgba(0,0,0,.88)}
.photo-viewer figure{margin:0;flex:1;min-height:0}
.photo-viewer .viewer-prev,.photo-viewer .viewer-next{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:48px;border:1px solid rgba(255,150,61,.45);background:#241a12;color:#ffb36f;cursor:pointer;font-size:25px;z-index:2}
.photo-viewer .viewer-prev{left:10px}.photo-viewer .viewer-next{right:10px}
.photo-viewer .viewer-count{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);font-size:14px;color:#d5bda7}
.photo-viewer .viewer-close{color:#ffb36f;z-index:3}
@media(max-width:600px){.photo-viewer{padding:48px 8px 70px;width:98vw}.photo-viewer .viewer-prev,.photo-viewer .viewer-next{top:auto;bottom:8px;transform:none}.photo-viewer .viewer-count{bottom:22px}}

/* Casual protection against drag/save gestures on portfolio media. */
img, video {
  -webkit-user-drag: none;
  -webkit-touch-callout: none;
  user-select: none;
  -webkit-user-select: none;
}


/* Portfolio image bytes now contain the watermark. Keep CSS watermark only for video. */
.watermarked:has(img)::after,
.photo-viewer figure.watermarked::after { display:none !important; }
