:root{--ink:#0b0a0a;--charcoal:#161413;--paper:#f6f1e8;--white:#fffdf8;--gold:#c79a4b;--gold-light:#efd59a;--rose:#a8414e;--teal:#196b67;--line:rgba(23,18,12,.14);--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:"Aptos","Segoe UI",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.65;letter-spacing:0}
body::before{position:fixed;inset:0;z-index:20;pointer-events:none;content:"";opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
a{color:inherit}
img{display:block;max-width:100%}
button,input,textarea{font:inherit}
.skip-link{position:fixed;left:16px;top:-80px;z-index:100;background:var(--white);color:var(--ink);padding:10px 14px}.skip-link:focus{top:16px}
.site-header{position:absolute;inset:0 0 auto;z-index:10;color:var(--white)}
.nav-shell{width:min(1240px,calc(100% - 48px));height:94px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.25)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:var(--serif);font-size:20px;line-height:1.05}
.brand-mark{display:grid;width:42px;height:42px;place-items:center;border:1px solid var(--gold);color:var(--gold-light);font-size:27px}
.brand small{display:block;margin-top:5px;color:rgba(255,255,255,.62);font:10px/1 var(--sans);text-transform:uppercase;letter-spacing:.18em}
.site-nav{display:flex;align-items:center;gap:28px}.site-nav a{text-decoration:none;font-size:13px;text-transform:uppercase;letter-spacing:.1em}.site-nav a:hover,.site-nav a:focus{color:var(--gold-light)}
.site-nav .nav-contact{border:1px solid rgba(255,255,255,.5);padding:8px 13px}
.menu-toggle{display:none;border:0;background:transparent;color:inherit;width:42px;height:42px;padding:10px}.menu-toggle span{display:block;width:22px;height:1px;margin:6px auto;background:currentColor}
.hero{position:relative;min-height:min(760px,92vh);display:grid;align-items:end;overflow:hidden;background:#090807;color:var(--white)}
.hero-media{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.58) 43%,rgba(0,0,0,.15) 100%),url('/wp-content/uploads/2020/05/rosieconcept-portfolio.jpg');background-size:cover;background-position:center;animation:hero-reveal 1.1s ease-out both}
.hero-copy{position:relative;z-index:1;width:min(1240px,calc(100% - 48px));margin:0 auto;padding:175px 0 100px}.hero-copy>*{max-width:690px}.hero-copy h1{margin:.12em 0 .2em;font:clamp(70px,10vw,150px)/.84 var(--serif);font-weight:400;color:var(--gold-light)}
.hero-copy>p:not(.eyebrow){max-width:630px;margin:0;color:rgba(255,255,255,.8);font:21px/1.55 var(--serif)}
.eyebrow{margin:0 0 14px;color:var(--gold);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.2em}
.hero-actions{display:flex;gap:12px;margin-top:34px}
.button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:11px 18px;border:1px solid transparent;text-decoration:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;transition:background .2s,color .2s,border-color .2s}.button.gold{background:var(--gold);color:#120d07}.button.gold:hover{background:var(--gold-light)}.button.ghost{border-color:rgba(255,255,255,.45);color:var(--white)}.button.ghost:hover{border-color:var(--gold);color:var(--gold-light)}.button.ghost-dark{border-color:var(--ink)}
.hero-scroll{position:absolute;right:calc((100% - min(1240px,calc(100% - 48px)))/2);bottom:44px;width:36px;height:48px;border:1px solid rgba(255,255,255,.4)}.hero-scroll span{position:absolute;left:50%;top:10px;width:1px;height:18px;background:var(--gold);animation:scroll 1.8s ease-in-out infinite}
.section-shell{width:min(1240px,calc(100% - 48px));margin:auto}
.journal{padding:76px 0 84px;background:var(--paper);border-bottom:1px solid var(--line)}
.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:44px;align-items:end;margin-bottom:36px}.section-heading h2{max-width:760px;margin:0;font:clamp(38px,5vw,70px)/1.02 var(--serif);font-weight:400}.section-heading>p,.section-heading>div+ p{margin:0;color:#5f554b}
.article-library{border-top:1px solid var(--ink)}
.tab-list{display:flex;gap:4px;padding:14px 0;border-bottom:1px solid var(--line)}.tab-list button{border:0;background:transparent;color:#776b60;padding:10px 15px;cursor:pointer;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.tab-list button[aria-selected="true"]{background:var(--ink);color:var(--gold-light)}
.tab-panel{padding-top:25px}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.article-card{position:relative;min-height:270px;padding:24px;display:flex;flex-direction:column;background:var(--white);text-decoration:none;transition:background .2s,transform .2s}.article-card:hover,.article-card:focus-visible{z-index:1;background:#fff8e9;transform:translateY(-3px)}
.article-meta{display:flex;justify-content:space-between;gap:14px;color:var(--rose);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.article-meta time{color:#82766b;font-weight:500}.article-card h3{margin:30px 0 12px;font:25px/1.15 var(--serif);font-weight:400}.article-card p{margin:0;color:#655a50;font-size:14px}.read-more{margin-top:auto;padding-top:24px;color:var(--teal);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.services-home{padding:98px 0;background:var(--white)}.section-heading.split{align-items:start}.service-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.service-track>a{min-height:270px;padding:24px 22px;border-right:1px solid var(--line);text-decoration:none}.service-track>a:last-child{border-right:0}.service-track span{color:var(--rose);font:14px var(--serif)}.service-track h3{margin:72px 0 12px;font:26px/1.12 var(--serif);font-weight:400}.service-track p{margin:0;color:#6c6259}.service-track a:hover{background:var(--paper)}
.studio-story{display:grid;grid-template-columns:1.15fr .85fr;min-height:520px;background:var(--ink);color:var(--white)}.story-image{min-height:460px;overflow:hidden;background:#070707}.story-image img{width:100%;height:100%;object-fit:contain;object-position:center}.story-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(35px,6vw,100px)}.story-copy h2{margin:0 0 24px;font:clamp(38px,4.5vw,68px)/1 var(--serif);font-weight:400;color:var(--gold-light)}.story-copy p:not(.eyebrow){color:rgba(255,255,255,.72)}.text-link{margin-top:20px;color:var(--gold-light);text-decoration:none;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.contact-strip{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:58px max(24px,calc((100% - 1240px)/2));background:var(--teal);color:var(--white)}.contact-strip h2{margin:0;font:clamp(34px,4vw,56px)/1 var(--serif);font-weight:400}.contact-strip .eyebrow{color:#a8ddd7}
.site-footer{padding:55px 0;background:var(--charcoal);color:rgba(255,255,255,.72)}.footer-shell{width:min(1240px,calc(100% - 48px));margin:auto;display:flex;justify-content:space-between;gap:40px}.footer-brand{color:var(--gold-light);font:30px var(--serif);text-decoration:none}.footer-shell p{margin:6px 0}.footer-nav{display:flex;align-items:center;flex-wrap:wrap;gap:22px}.footer-nav a{text-decoration:none;font-size:13px}
.page-hero,.article-hero{min-height:510px;padding:150px max(24px,calc((100% - 1240px)/2)) 70px;display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center;background:var(--ink);color:var(--white)}.page-hero-copy h1,.article-hero-copy h1{margin:0 0 20px;font:clamp(48px,7vw,94px)/.96 var(--serif);font-weight:400;color:var(--gold-light)}.page-hero-copy>p:not(.eyebrow),.article-hero-copy>p:not(.eyebrow){max-width:650px;color:rgba(255,255,255,.72);font:19px/1.55 var(--serif)}.page-hero-image,.article-hero-image{height:310px;overflow:hidden;border:1px solid rgba(199,154,75,.4)}.page-hero-image img,.article-hero-image img{width:100%;height:100%;object-fit:cover}.page-content{width:min(1100px,calc(100% - 48px));margin:auto;padding:90px 0 110px;display:grid;grid-template-columns:minmax(0,720px) minmax(230px,1fr);gap:80px}.prose,.article-body{font:18px/1.75 var(--serif)}.prose .lead,.article-body>p:first-child{font-size:23px;color:#413a33}.prose h2,.article-body h2{margin:2em 0 .6em;font:38px/1.08 var(--serif);font-weight:400}.prose h3,.article-body h3{margin:1.8em 0 .5em;font:27px/1.15 var(--serif);font-weight:400}.prose a,.article-body a{color:var(--teal)}.prose img,.article-body img{width:auto;max-height:560px;margin:34px auto;border:1px solid var(--line)}.prose table,.article-body table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font:14px/1.5 var(--sans)}.prose td,.prose th,.article-body td,.article-body th{padding:10px;border:1px solid var(--line);text-align:left}.page-content>aside{position:sticky;top:30px;align-self:start;padding:26px;border-top:2px solid var(--gold);background:var(--white)}.page-content>aside h2{margin:0 0 12px;font:29px/1.1 var(--serif);font-weight:400}
.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:38px;background:var(--line);border:1px solid var(--line)}.feature-list article{padding:22px;background:var(--white)}.feature-list h2{font-size:27px;margin:0 0 10px}.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:35px}.portfolio-grid figure{margin:0;background:var(--ink);color:var(--gold-light)}.portfolio-grid img{width:100%;height:190px;object-fit:cover;margin:0;border:0}.portfolio-grid figcaption{padding:12px 14px;font:17px var(--serif)}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:35px 0}.contact-options a{display:flex;flex-direction:column;padding:20px;background:var(--ink);color:var(--white);text-decoration:none}.contact-options span{color:var(--gold);font:11px var(--sans);text-transform:uppercase;letter-spacing:.1em}.contact-options strong{margin-top:8px;font:22px var(--serif)}
.article-hero{min-height:560px}.article-hero-copy time{display:block;margin-top:25px;color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.back-link{display:inline-block;margin-bottom:30px;color:rgba(255,255,255,.62);font-size:12px;text-decoration:none;text-transform:uppercase;letter-spacing:.1em}.article-layout{width:min(1100px,calc(100% - 48px));margin:auto;padding:80px 0 100px;display:grid;grid-template-columns:minmax(0,760px) 240px;gap:80px}.article-aside{position:sticky;top:30px;align-self:start;padding:22px;border-top:2px solid var(--gold);background:var(--white)}.article-aside p{margin:0;color:var(--rose);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.article-aside strong{display:block;margin:10px 0 20px;font:24px/1.2 var(--serif)}.article-aside a{color:var(--teal);font-size:12px;font-weight:700;text-decoration:none;text-transform:uppercase;letter-spacing:.08em}.article-next{padding:55px max(24px,calc((100% - 1100px)/2));background:var(--teal);color:var(--white)}
@keyframes hero-reveal{from{opacity:.35}to{opacity:1}}@keyframes scroll{0%,100%{transform:translate(-50%,0);opacity:.3}50%{transform:translate(-50%,14px);opacity:1}}
@media(max-width:900px){.site-nav{position:absolute;top:84px;right:24px;left:24px;display:none;flex-direction:column;align-items:stretch;gap:0;padding:10px;background:var(--ink);border:1px solid rgba(255,255,255,.2)}.nav-open .site-nav{display:flex}.site-nav a{padding:13px}.menu-toggle{display:block}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-track{grid-template-columns:1fr 1fr}.service-track>a:nth-child(2){border-right:0}.service-track>a:nth-child(-n+2){border-bottom:1px solid var(--line)}.studio-story,.page-hero,.article-hero{grid-template-columns:1fr}.story-image{min-height:350px}.page-hero-image,.article-hero-image{height:260px}.page-content,.article-layout{grid-template-columns:1fr;gap:45px}.page-content>aside,.article-aside{position:static}.section-heading{grid-template-columns:1fr}.hero-scroll{display:none}}
@media(max-width:620px){.nav-shell,.hero-copy,.section-shell,.footer-shell,.page-content,.article-layout{width:calc(100% - 32px)}.nav-shell{height:80px}.brand{font-size:17px}.brand-mark{width:36px;height:36px}.hero{min-height:720px}.hero-media{background-position:62% center}.hero-copy{padding:160px 0 64px}.hero-copy h1{font-size:64px}.hero-copy>p:not(.eyebrow){font-size:18px}.hero-actions{align-items:stretch;flex-direction:column}.journal,.services-home{padding:60px 0}.section-heading h2{font-size:43px}.tab-list{display:grid;grid-template-columns:1fr 1fr}.tab-list button:last-child{grid-column:1/-1}.article-grid{grid-template-columns:1fr}.article-card{min-height:235px}.service-track{grid-template-columns:1fr}.service-track>a{min-height:190px;border-right:0;border-bottom:1px solid var(--line)}.service-track h3{margin-top:38px}.studio-story{display:flex;flex-direction:column}.story-image{min-height:260px}.story-copy{padding:48px 20px}.contact-strip{align-items:flex-start;flex-direction:column}.footer-shell{flex-direction:column}.footer-nav{align-items:flex-start;flex-direction:column;gap:12px}.page-hero,.article-hero{padding:125px 16px 48px;gap:35px}.page-hero-copy h1,.article-hero-copy h1{font-size:49px}.page-hero-image,.article-hero-image{height:190px}.page-content,.article-layout{padding:55px 0}.prose,.article-body{font-size:17px}.prose h2,.article-body h2{font-size:32px}.feature-list,.portfolio-grid,.contact-options{grid-template-columns:1fr}.portfolio-grid img{height:170px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-media,.hero-scroll span{animation:none}.article-card{transition:none}}
