/* JOSELLE AMISTAD — lightweight static portfolio.
   Brand colors: deep navy #17263C, ivory #F8F7F4, taupe #B8A58E.
   No framework, no CSS library, no build step. */
:root {
  --navy: #17263C;
  --navy-deep: #0f1c2e;
  --navy-soft: #223550;
  --ivory: #F8F7F4;
  --paper: #FFFFFF;
  --warm: #F0EFEB;
  --taupe: #B8A58E;
  --taupe-dark: #806C53;
  --soft-grey: #D9DEE5;
  --ink: #374151;
  --muted: #66707F;
  --rule: rgba(23, 38, 60, .15);
  --rule-light: rgba(248,247,244,.17);
  --serif: 'DM Serif Display', Georgia, 'Times New Roman', serif;
  --sans: 'Manrope', 'Segoe UI', Arial, sans-serif;
  --container: 1360px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;min-width:320px;background:var(--ivory);color:var(--navy);font:400 14px/1.82 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img,svg{display:block;max-width:100%}
::selection{background:var(--taupe);color:var(--navy)}
:focus-visible{outline:2px solid var(--taupe-dark);outline-offset:4px}
p,h1,h2,h3,h4{margin:0 0 1rem}
h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.02em}
h1{font-size:clamp(48px,5.4vw,83px)}
h2{font-size:clamp(37px,4.2vw,63px)}
h3{font-size:clamp(22px,2vw,29px)}
em{font-style:italic;font-weight:400}
.container{width:min(calc(100% - 104px),var(--container));margin-inline:auto}
.skip-link{position:fixed;left:15px;top:10px;z-index:2000;padding:10px 18px;background:var(--taupe);color:var(--navy);transform:translateY(-190%);font-weight:700}
.skip-link:focus{transform:none}

/* Header */
.site-header{position:relative;z-index:50;background:var(--navy);color:var(--ivory);border-bottom:1px solid var(--rule-light)}
.nav-shell{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:flex;align-items:center;gap:13px;min-width:0;flex:0 0 auto}
.brand-seal{height:44px;width:44px;display:grid;place-items:center;color:var(--taupe);flex:0 0 auto}
.brand-seal svg{width:44px;height:44px}
.brand-wordmark{display:flex;flex-direction:column;line-height:1.2;gap:6px}
.brand-wordmark strong{font-size:12.2px;letter-spacing:.17em;font-weight:800;white-space:nowrap}
.brand-wordmark>span{font-size:7.4px;letter-spacing:.11em;color:#B0BCC8;white-space:nowrap}
.site-nav{display:flex;gap:27px;align-items:center;justify-content:center}
.site-nav>a:not(.nav-mobile-cta){font-size:10px;font-weight:750;letter-spacing:.025em;color:#C5CDD8;transition:color .2s;position:relative;white-space:nowrap}
.site-nav>a:hover,.site-nav>a[aria-current="page"]{color:#E0CBB0}
.site-nav>a[aria-current="page"]:after{content:"";position:absolute;bottom:-12px;left:0;right:0;height:1px;background:var(--taupe)}
.nav-cta,.nav-mobile-cta{background:var(--taupe);color:var(--navy)!important;display:inline-flex;align-items:center;justify-content:space-between;gap:27px;padding:11px 16px;font-size:10px;font-weight:800;letter-spacing:.03em;white-space:nowrap;transition:background .2s,transform .2s}
.nav-cta:hover,.nav-mobile-cta:hover{background:#D2C0A8;transform:translateY(-1px)}
.nav-mobile-cta,.menu-toggle{display:none}

/* Shared editorial components */
.section{padding-block:114px}
.section-soft{background:var(--warm)}
.eyebrow{display:flex;align-items:center;gap:13px;color:var(--taupe-dark);font-weight:800;font-size:10px;letter-spacing:.16em;line-height:1.7;margin-bottom:26px;text-transform:uppercase}
.eyebrow-rule{display:inline-block;height:1px;width:31px;background:var(--taupe);flex:0 0 31px}
.eyebrow-light{color:var(--taupe)}
.display-title{max-width:900px;letter-spacing:-.023em}
.display-title em{color:#92795E}
.small-index{font-size:9px;font-weight:800;letter-spacing:.14em;color:#86745E;text-transform:uppercase}
.mini-label{font-size:9px;letter-spacing:.12em;font-weight:800;color:#857059;text-transform:uppercase}
.btn{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;min-height:54px;padding:16px 22px;font-size:10px;line-height:1.2;letter-spacing:.055em;font-weight:800;border:1px solid transparent;text-transform:uppercase;transition:transform .18s,background-color .18s,border-color .18s;white-space:nowrap}
.btn:hover{transform:translateY(-2px)}
.btn-taupe{background:var(--taupe);color:var(--navy)}
.btn-taupe:hover{background:#D4C2A9}
.btn-navy{background:var(--navy);color:var(--ivory)}
.btn-navy:hover{background:#334863}
.btn-outline-light{border-color:rgba(248,247,244,.43);color:var(--ivory)}
.btn-outline-light:hover{border-color:var(--taupe);color:var(--taupe)}
.button-row{display:flex;flex-wrap:wrap;gap:11px}
.text-action{display:inline-flex;align-items:center;gap:30px;justify-content:space-between;padding-bottom:9px;border-bottom:1px solid var(--taupe);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.065em;transition:gap .2s;white-space:normal}
.text-action:hover{gap:41px}
.text-action-light{color:var(--ivory)}
.section-heading{display:flex;justify-content:space-between;gap:55px;align-items:end;margin-bottom:48px}
.section-heading h2{margin-bottom:20px}
.section-heading p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:670px;margin:0}
.heading-side{color:#87745F;font-size:9px;font-weight:800;letter-spacing:.12em;white-space:nowrap;margin-bottom:6px}

/* Home hero */
.hero{background:var(--navy);color:var(--ivory)}
.home-hero-grid{display:grid;grid-template-columns:1.08fr .92fr;min-height:670px;gap:50px}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:85px 0 85px}
.hero-copy h1{font-size:clamp(51px,5.1vw,82px);max-width:770px;line-height:1.12;margin-bottom:28px}
.hero-copy h1 em{color:#D5C2A9}
.hero-lede{color:#C3CCD7;font-size:13px;line-height:2.12;max-width:590px;margin-bottom:33px}
.hero-signoff{display:flex;align-items:center;gap:18px;margin-top:52px}
.signoff-line{height:1px;width:39px;background:var(--taupe)}
.hero-signoff>span:last-child{display:flex;flex-direction:column;line-height:1.8}
.hero-signoff strong{font-size:9px;letter-spacing:.14em}
.hero-signoff small{font-size:9px;color:#ACB9C9}
.hero-visual{margin-block:35px;min-height:590px;background:#22334D;position:relative;overflow:hidden;border:1px solid rgba(229,211,187,.12);display:grid;place-items:center;isolation:isolate}
.blueprint-grid{position:absolute;inset:0;opacity:.46;background-image:linear-gradient(rgba(221,231,241,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(221,231,241,.055) 1px,transparent 1px);background-size:43px 43px}
.blueprint-circle{position:absolute;border:1px solid rgba(192,167,135,.38);border-radius:50%;aspect-ratio:1}
.circle-one{width:min(87%,540px)}
.circle-two{width:min(70%,435px);opacity:.60}
.circle-three{width:min(52%,318px);opacity:.45}
.monogram-frame{position:relative;z-index:1;border:1px solid #C6B295;min-height:235px;width:240px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:13px;background:rgba(23,38,60,.13)}
.monogram-frame>span{font-family:Georgia,serif;font-size:135px;line-height:1;letter-spacing:-26px;padding-right:22px;color:#D3BEA1}
.monogram-frame small{font-weight:700;letter-spacing:.15em;line-height:1.8;text-align:center;color:#C4B69E;font-size:7px}
.graphic-corner{position:absolute;width:36px;height:36px;border-color:var(--taupe);z-index:1}
.corner-1{top:20px;left:20px;border-top:1px solid;border-left:1px solid}
.corner-2{right:20px;bottom:20px;border-right:1px solid;border-bottom:1px solid}
.visual-top{position:absolute;top:34px;right:26px;z-index:1;font-size:8px;font-weight:700;letter-spacing:.15em;color:#C2B7A7}
.visual-bottom{position:absolute;bottom:32px;left:32px;font-size:8px;font-weight:700;letter-spacing:.14em;color:#C5B6A2;z-index:1}
.hero-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:23px;border-top:1px solid var(--rule-light);font-weight:800;font-size:8px;letter-spacing:.12em;color:#A6B5C6}
.strength-strip{background:var(--ivory);border-bottom:1px solid var(--rule)}
.strength-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.strength-grid>div{padding:25px 22px 26px 0;margin-right:24px;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}
.strength-grid>div:last-child{border-right:0;margin-right:0}
.strength-grid span{font-size:10px;color:var(--taupe-dark);font-weight:800}
.strength-grid strong{font-size:12px;font-weight:800}
.strength-grid small{font-size:10px;color:var(--muted)}

/* About preview / shared editorial layout */
.split-editorial{display:grid;grid-template-columns:250px 1fr;gap:95px}
.section-aside{min-height:430px;border-right:1px solid var(--rule);padding-right:38px;display:flex;flex-direction:column;position:relative}
.editorial-divider{display:block;height:1px;background:var(--taupe);width:80px;margin-top:25px}
.aside-mark{margin-top:auto;font-family:Georgia,serif;font-size:120px;letter-spacing:-28px;padding-right:23px;color:#9C8A72;line-height:1}
.aside-mark span{font-size:30px;letter-spacing:0;display:inline-block;position:relative;bottom:42px;margin-left:13px}
.aside-caption{font-size:9px;font-weight:800;letter-spacing:.11em;color:var(--taupe-dark);writing-mode:vertical-lr;margin-top:40px}
.editorial-main{max-width:900px;padding-top:4px}
.editorial-main h2{margin-bottom:24px}
.editorial-main>p:not(.eyebrow){max-width:770px;color:var(--ink);line-height:2;font-size:14px}
.editorial-main .lead-serif{font:400 clamp(22px,2vw,28px)/1.55 var(--serif)!important;color:var(--navy)!important;margin-bottom:22px}
.qualities{display:flex;gap:12px 24px;flex-wrap:wrap;margin:27px 0 34px}
.qualities span{font-size:10px;letter-spacing:.09em;font-weight:800;text-transform:uppercase}

/* Service cards */
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.service-card{min-height:440px;background:var(--paper);border:1px solid #E5E3DF;display:flex;justify-content:space-between;flex-direction:column;padding:24px;transition:transform .22s,border-color .22s,box-shadow .22s}
.service-card:hover{transform:translateY(-5px);border-color:var(--taupe);box-shadow:0 18px 40px rgba(23,38,60,.055)}
.service-card-top{display:flex;justify-content:space-between;align-items:start}
.icon-diamond{font-family:Georgia,serif;font-size:20px;color:var(--taupe);line-height:1}
.service-card-bottom h3{font-size:clamp(23px,2vw,30px);margin:12px 0 17px}
.service-card-bottom p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:25px}
.card-action{border-top:1px solid #DBE0E5;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:color .2s}
.card-action:hover{color:var(--taupe-dark)}

/* Process */
.process-panel{background:var(--navy);color:var(--ivory)}
.process-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:100px}
.process-heading h2 em{color:#D5C2A9}
.process-heading>p:not(.eyebrow){max-width:490px;color:#BAC7D4;font-size:13px;line-height:2; margin-bottom:29px}
.process-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--rule-light);gap:1px;background:var(--rule-light)}
.process-steps>div{min-height:210px;padding:26px 28px;background:#20334D;display:flex;flex-direction:column}
.process-steps span{font-size:10px;letter-spacing:.1em;color:var(--taupe);font-weight:800}
.process-steps h3{font-size:26px;margin:auto 0 9px}
.process-steps p{font-size:11px;color:#BFC9D4;line-height:1.8;margin:0}

/* Visual portfolio */
.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.work-card{background:#FFF;border:1px solid #E6E5E0;min-width:0;transition:box-shadow .2s,transform .2s}
.work-card:hover{transform:translateY(-3px);box-shadow:0 18px 35px rgba(23,38,60,.07)}
.work-image{height:225px;background:var(--navy);overflow:hidden;position:relative}
.work-image img{width:100%;height:100%;object-fit:cover}
.work-overlay{position:absolute;left:12px;top:12px;z-index:2;background:rgba(23,38,60,.87);color:#F1E8DC;font-weight:800;font-size:8px;letter-spacing:.09em;padding:7px 8px}
.work-copy{padding:24px 20px}
.work-copy h3{font-size:24px;margin:11px 0 13px}
.work-copy p{font-size:11px;color:var(--muted);line-height:1.85;margin-bottom:19px;min-height:61px}
.work-notice{border-top:1px solid var(--rule);display:block;padding-top:12px;color:var(--taupe-dark);font-size:9px;font-weight:700}

/* CTA and footer */
.cta-band{background:var(--navy);color:var(--ivory);overflow:hidden;position:relative}
.cta-band:after{content:"";pointer-events:none;position:absolute;width:500px;height:500px;right:-160px;top:-270px;border:1px solid rgba(184,165,142,.20);border-radius:50%}
.cta-inner{padding-block:91px;display:flex;align-items:center;justify-content:space-between;gap:60px;position:relative;z-index:1}
.cta-inner h2{font-size:clamp(38px,4.5vw,65px);margin-bottom:20px}
.cta-inner h2 em{color:#D4BFA1}
.cta-inner p:not(.eyebrow){color:#B8C6D5;max-width:620px;font-size:13px;margin:0}
.cta-inner>.btn{flex:0 0 auto}
.site-footer{background:var(--navy-deep);color:var(--ivory)}
.footer-upper{padding-block:92px 82px;display:grid;grid-template-columns:1.4fr .55fr 1fr;gap:78px}
.footer-monogram{font-family:Georgia,serif;font-size:83px;letter-spacing:-19px;color:var(--taupe);line-height:1;display:inline-block;padding-right:30px;position:relative;margin-bottom:14px}
.footer-monogram .tiny-diamond{position:absolute;font-size:15px;letter-spacing:0;right:8px;top:5px}
.footer-identity h2{font-size:clamp(29px,2.7vw,40px);line-height:1.25;margin-bottom:19px}
.footer-identity h2 em{color:#D4C1A9}
.footer-identity>p{font-size:11px;color:#AEBCCB;line-height:2;margin:0}
.footer-label{font-weight:800;letter-spacing:.14em;font-size:10px;color:var(--taupe);display:block;margin-bottom:23px}
.footer-nav,.footer-connect{padding-top:20px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-nav a,.footer-connect a{font-size:12px;color:#BDCAD7;transition:color .2s}
.footer-nav a:hover,.footer-connect a:hover{color:var(--taupe)}
.footer-connect .footer-email{font-weight:700;word-break:break-word}
.footer-footnote{color:#8EA0B3;font-size:10px;margin-top:26px}
.footer-lower{padding:24px 0;border-top:1px solid var(--rule-light);display:flex;align-items:center;justify-content:space-between;gap:30px;font-size:9px;font-weight:750;letter-spacing:.1em;color:#98AABF}
.footer-sep{margin-inline:12px;color:var(--taupe)}
.footer-lower a:hover{color:var(--ivory)}

/* Interior pages */
.interior-hero{background:var(--navy);color:var(--ivory);overflow:hidden}
.interior-hero-grid{min-height:355px;display:grid;grid-template-columns:1fr 240px;align-items:center;gap:50px;padding-block:77px}
.interior-hero h1{font-size:clamp(49px,5.3vw,82px);line-height:1.1;margin:0 0 24px;max-width:940px}
.interior-hero h1 em{color:#D2BDA2}
.interior-hero p:not(.eyebrow){font-size:13px;color:#BFCAD7;line-height:1.9;max-width:760px;margin:0}
.interior-signature{height:236px;border-left:1px solid var(--rule-light);display:flex;flex-direction:column;justify-content:space-between;padding:22px 0 10px 50px}
.interior-signature span:first-child{font-size:9px;letter-spacing:.15em;color:var(--taupe);font-weight:800;white-space:nowrap}
.interior-signature .vertical-line{height:1px;width:76px;background:var(--taupe)}
.interior-signature strong{font-family:Georgia,serif;font-weight:400;font-size:90px;line-height:1;color:#D2BDA2;letter-spacing:-14px}
.interior-hero-short{padding-block:93px}
.interior-hero-short h1{margin-bottom:20px}

/* About */
.about-layout{display:grid;grid-template-columns:270px 1fr;gap:90px}
.about-side{position:relative;display:flex;flex-direction:column;border-right:1px solid var(--rule);min-height:550px;padding-right:43px}
.about-side-art{margin:auto 0;font:400 155px/1 Georgia,serif;letter-spacing:-39px;padding-right:34px;color:#B3A18C}
.minor-note{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--taupe-dark)}
.prose{max-width:880px}
.prose h2{margin-bottom:30px}
.prose>p:not(.eyebrow){font-size:14px;color:var(--ink);line-height:2.15;max-width:820px}
.prose .lead-serif{font:400 clamp(23px,2.2vw,33px)/1.55 var(--serif)!important;color:var(--navy)!important}
.about-quote{font:italic 30px/1.4 var(--serif);padding:24px 0 29px 22px;border-left:2px solid var(--taupe);max-width:650px;margin:34px 0;color:#77614A}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.values-grid article{background:var(--paper);padding:31px 25px 28px;min-height:295px;display:flex;flex-direction:column}
.values-grid article>span{color:var(--taupe-dark);font-size:10px;font-weight:800}
.values-grid article>div{font:400 32px Georgia,serif;color:var(--taupe);margin:28px 0 auto}
.values-grid h3{font-size:28px;margin-bottom:12px}
.values-grid p{font-size:12px;color:var(--muted);margin:0;line-height:1.85}
.approach-list{margin-top:37px;border-top:1px solid var(--rule)}
.approach-list>div{border-bottom:1px solid var(--rule);padding:20px 0;display:grid;grid-template-columns:42px 1fr;column-gap:18px}
.approach-list span{grid-row:span 2;font-size:10px;font-weight:800;color:var(--taupe-dark)}
.approach-list strong{font-size:15px}
.approach-list p{margin:4px 0 0;font-size:12px;color:var(--muted)}

/* Services page */
.service-index-bar{background:#EDEAE5;border-bottom:1px solid var(--rule)}
.service-index-bar>.container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.service-index-bar a{display:flex;justify-content:space-between;align-items:center;padding:19px 18px 19px 0;margin-right:17px;border-right:1px solid var(--rule);font-size:10px;gap:10px;font-weight:800;transition:color .2s}
.service-index-bar a:last-child{border-right:0;margin-right:0}
.service-index-bar a span:first-child{color:var(--taupe-dark)}
.service-index-bar a:hover{color:var(--taupe-dark)}
.detailed-service{scroll-margin-top:0}
.service-detail-layout{display:grid;grid-template-columns:235px 1fr;gap:96px}
.service-detail-aside{border-right:1px solid var(--rule);padding:0 38px 0 0;display:flex;flex-direction:column;min-height:480px}
.service-num{font:400 125px/1 var(--serif);color:#B7A58F;letter-spacing:-.055em;margin-bottom:15px}
.aside-rule{width:70px;height:1px;background:var(--taupe);margin:28px 0}
.service-detail-aside p{font-size:9px;font-weight:800;letter-spacing:.12em;color:var(--taupe-dark);line-height:1.9}
.service-detail-main h2{font-size:clamp(37px,4vw,58px);margin-bottom:24px;max-width:1000px}
.service-detail-main .lead-serif{max-width:850px;font:400 clamp(20px,2vw,26px)/1.55 var(--serif);color:#39485A;margin-bottom:36px}
.service-columns{display:grid;grid-template-columns:1.1fr .9fr;gap:68px;margin:30px 0 24px}
.service-columns h3{font-size:27px;margin-bottom:19px}
.service-columns h4{font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin:32px 0 14px}
.check-list,.numbered-clean{list-style:none;margin:0;padding:0}
.check-list li{padding:13px 0;border-bottom:1px solid var(--rule);display:flex;gap:11px;align-items:baseline;color:var(--ink);font-size:13px}
.check-list li span{flex:0 0 auto;color:var(--taupe-dark)}
.numbered-clean{counter-reset:count}
.numbered-clean li{counter-increment:count;display:flex;gap:13px;padding:13px 0;border-bottom:1px solid var(--rule);font-size:13px;color:var(--ink)}
.numbered-clean li:before{content:counter(count,decimal-leading-zero);font-weight:800;color:var(--taupe-dark);font-size:9px;padding-top:5px}
.tag-list{display:flex;flex-wrap:wrap;gap:8px}
.tag-list span{padding:7px 10px;border:1px solid #CEC8C0;color:#4E5967;font-size:10px;background:rgba(255,255,255,.23)}
.service-note{border-left:2px solid var(--taupe);color:var(--muted);font-size:11px;padding:5px 0 5px 15px;margin:22px 0 26px}
.callout-simple-inner{display:flex;align-items:center;justify-content:space-between;gap:60px;border-top:1px solid var(--rule);padding-top:70px}
.callout-simple-inner p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:640px}
.callout-simple-inner .btn{flex:0 0 auto}

/* Portfolio page */
.portfolio-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end;margin-bottom:54px}
.portfolio-intro h2{margin-bottom:0}
.portfolio-intro>div:last-child{padding-bottom:7px}
.portfolio-intro>div:last-child p{font-size:14px;color:var(--ink);line-height:2}
.sample-notice{display:block;font-size:9px;color:var(--taupe-dark);letter-spacing:.09em;font-weight:800;margin-top:25px}
.portfolio-full{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.portfolio-full .work-image{height:330px}
.portfolio-full .work-copy{padding:27px}
.portfolio-full .work-copy p{min-height:0;max-width:500px}
.portfolio-next{display:flex;align-items:center;gap:30px;margin-top:40px;background:#EDEAE5;padding:24px}
.portfolio-next .mini-label{flex:0 0 210px}
.portfolio-next p{margin:0;font-size:12px;color:var(--ink)}

/* Experience */
.experience-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:95px}
.experience-sidebar{padding-right:28px}
.experience-sidebar p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:400px}
.small-caption{font-size:10px;color:var(--taupe-dark);font-weight:700;line-height:1.8;max-width:330px;display:block;margin-top:36px}
.timeline{border-left:1px solid #CFC0AF;padding-left:28px}
.experience-row{display:grid;grid-template-columns:155px 22px 1fr;gap:20px;padding-bottom:40px;margin-bottom:37px;border-bottom:1px solid var(--rule);position:relative}
.experience-row:last-child{border-bottom:0;margin:0;padding-bottom:0}
.experience-date{display:flex;flex-direction:column;gap:7px;padding-top:9px}
.experience-date>span{font-size:11px;font-weight:800;color:var(--taupe-dark);line-height:1.5}
.experience-date small{color:var(--muted);font-size:10px}
.experience-point{position:relative}
.experience-point span{position:absolute;left:0;top:13px;width:10px;height:10px;border-radius:50%;background:var(--taupe);outline:4px solid var(--ivory)}
.experience-detail h3{font-size:27px;margin:0 0 11px}
.experience-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.experience-top .small-index{color:var(--taupe-dark)}
.experience-detail p{font-size:12px;color:var(--muted);line-height:1.9;margin:0;max-width:650px}
.tool-panels{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tool-panels>div{min-height:245px;padding:29px 24px;background:var(--paper);border:1px solid #E2E1DC;display:flex;flex-direction:column}
.tool-panels span{font-size:9px;font-weight:800;color:var(--taupe-dark);letter-spacing:.1em}
.tool-panels h3{font-size:27px;margin:auto 0 13px}
.tool-panels p{font-size:11px;color:var(--muted);line-height:1.85;margin:0}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:95px}
.contact-details h2{max-width:570px}
.contact-details>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:2;max-width:530px}
.contact-methods{display:flex;flex-direction:column;border-top:1px solid var(--rule);margin-top:39px}
.contact-methods>a,.contact-method-static{display:flex;align-items:center;gap:17px;border-bottom:1px solid var(--rule);padding:19px 0}
.method-icon{height:40px;width:40px;flex:0 0 40px;display:grid;place-items:center;color:var(--taupe-dark);border:1px solid var(--rule);font:700 16px Georgia,serif}
.contact-methods a>span:nth-child(2),.contact-method-static>span:nth-child(2){display:flex;flex-direction:column;min-width:0;gap:4px}
.contact-methods small{font-size:9px;color:var(--taupe-dark);font-weight:800;letter-spacing:.12em}
.contact-methods strong{font-size:12px;overflow-wrap:anywhere}
.contact-methods a b{margin-left:auto;font-size:17px;font-weight:400}
.contact-methods a:hover strong{color:var(--taupe-dark)}
.contact-note{margin-top:45px;max-width:520px;display:flex;align-items:flex-start;flex-direction:column;gap:10px;border-left:2px solid var(--taupe);padding-left:20px}
.contact-note span{font-size:9px;font-weight:800;color:var(--taupe-dark);letter-spacing:.1em}
.contact-note p{font-size:11px;color:var(--muted);line-height:1.9;margin:0}
.contact-form-panel{padding:42px;background:#fff;border:1px solid #E8E5E0;align-self:start}
.contact-form-panel h3{font-size:37px;margin:18px 0 15px}
.form-description{font-size:12px;color:var(--muted);line-height:1.9;margin-bottom:26px}
.form-description strong{color:var(--ink)}
.contact-form-panel label{font-size:10px;letter-spacing:.055em;text-transform:uppercase;font-weight:800;display:flex;flex-direction:column;gap:9px;margin-bottom:20px}
.contact-form-panel label>.label-copy{display:block;color:var(--navy)}
.contact-form-panel label>.label-copy b{color:#8C684D}
.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.contact-form-panel input,.contact-form-panel select,.contact-form-panel textarea{width:100%;border:1px solid #D3D8DE;border-radius:0;background:#F8F7F4;color:var(--navy);padding:13px 13px;font-size:12px;font-weight:500;letter-spacing:normal;text-transform:none;outline:0;transition:border-color .2s;resize:vertical}
.contact-form-panel input:focus,.contact-form-panel select:focus,.contact-form-panel textarea:focus{border-color:var(--taupe-dark);box-shadow:0 0 0 2px rgba(184,165,142,.19)}
.contact-form-panel input::placeholder,.contact-form-panel textarea::placeholder{color:#89909A}
.contact-form-panel textarea{min-height:135px}
.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px}
.form-bottom p{font-size:9px;color:var(--muted);line-height:1.7;max-width:230px;margin:0}
.form-bottom .btn{min-height:52px}
.form-notice{margin:17px 0 0;background:#F1EBE1;padding:12px;font-size:11px;color:var(--navy);border-left:2px solid var(--taupe)}
.contact-tail{border-top:1px solid var(--rule);padding:24px 0}
.contact-tail>.container{display:flex;gap:18px;justify-content:center;align-items:center;font-size:10px;font-weight:800;letter-spacing:.15em;color:var(--taupe-dark)}

/* Privacy / 404 */
.legal-prose{max-width:870px}
.legal-prose h2{font-size:32px;margin:38px 0 14px}
.legal-prose>p{font-size:13px;color:var(--ink);line-height:2}
.legal-prose a:not(.text-action){text-decoration:underline;text-decoration-color:var(--taupe-dark);text-underline-offset:4px}
.legal-prose>.text-action{margin-top:26px}
.not-found{padding-block:115px 125px;min-height:65vh;display:flex;align-items:center}
.not-found .container{display:flex;flex-direction:column;align-items:flex-start}
.nf-rule{height:1px;background:var(--taupe);width:90px;margin:27px 0}
.not-found h1{font-size:clamp(105px,15vw,220px);line-height:.85;color:#B5A48F;letter-spacing:-.08em;margin-bottom:28px}
.not-found h2{font-size:clamp(28px,3vw,45px)}
.not-found p{font-size:14px;color:var(--muted);margin-bottom:29px}

/* Breakpoints */
@media(max-width:1210px){
 .site-nav{gap:17px}.brand-wordmark strong{font-size:11px}.brand-wordmark>span{font-size:7px}
 .nav-shell{gap:20px}.home-hero-grid{gap:30px}.hero-copy h1{font-size:clamp(46px,5.4vw,73px)}
 .service-card{padding:21px}.work-image{height:195px}.work-copy h3{font-size:21px}
 .process-grid,.contact-grid{gap:60px}.split-editorial,.service-detail-layout,.about-layout{gap:65px}
}
@media(max-width:1010px){
 .container{width:min(calc(100% - 64px),var(--container))}
 .nav-shell{min-height:74px}
 .nav-cta{display:none}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;min-width:43px;min-height:43px;border:1px solid rgba(248,247,244,.28);background:transparent;padding:11px;color:var(--ivory);margin-left:auto}
 .menu-toggle span{height:1px;width:100%;background:currentColor;display:block}
 .site-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px 32px 26px;background:#142238;box-shadow:0 17px 25px rgba(0,0,0,.17);border-top:1px solid var(--rule-light);flex-direction:column;align-items:stretch;gap:0}
 .site-nav.is-open{display:flex}.site-nav>a:not(.nav-mobile-cta){font-size:13px;padding:12px 0;border-bottom:1px solid var(--rule-light)}
 .site-nav>a[aria-current="page"]:after{display:none}.nav-mobile-cta{display:flex!important;margin-top:16px}
 .home-hero-grid{grid-template-columns:1fr .77fr;gap:26px;min-height:600px}
 .hero-copy{padding:65px 0}.hero-copy h1{font-size:clamp(43px,5.3vw,65px)}
 .hero-visual{min-height:490px}.monogram-frame{width:185px;min-height:195px}.monogram-frame>span{font-size:105px}
 .section{padding-block:86px}.service-grid,.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:340px;padding:26px}.work-image{height:250px}
 .process-grid{gap:45px}.split-editorial{grid-template-columns:190px 1fr;gap:48px}.section-aside{min-height:390px}.aside-mark{font-size:85px;letter-spacing:-20px}
 .about-layout{grid-template-columns:190px 1fr;gap:48px}.about-side{min-height:470px}.about-side-art{font-size:95px;letter-spacing:-23px}
 .service-detail-layout{grid-template-columns:155px 1fr;gap:45px}.service-num{font-size:95px}.service-detail-aside{padding-right:23px}
 .experience-grid{grid-template-columns:1fr}.experience-sidebar{max-width:700px}
 .tool-panels,.values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-upper{grid-template-columns:1.2fr .7fr 1fr;gap:30px}
}
@media(max-width:760px){
 .container{width:min(calc(100% - 36px),var(--container))}
 .site-header{position:relative}.nav-shell{min-height:70px}
 .brand-seal,.brand-seal svg{height:39px;width:39px}.brand-wordmark strong{font-size:11.4px}.brand-wordmark>span{font-size:6.6px}
 .home-hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:67px 0 54px}.hero-copy h1{font-size:clamp(48px,9vw,68px)}.hero-lede{font-size:13px}.hero-signoff{margin-top:38px}
 .hero-visual{min-height:430px;margin:0 0 22px}.monogram-frame{width:210px;min-height:205px}.hero-bottom{display:none}
 .strength-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strength-grid>div{padding:22px 10px 21px 0;margin-right:14px;border-right:0;border-bottom:1px solid var(--rule)}.strength-grid>div:nth-last-child(-n+2){border-bottom:0}
 .section{padding-block:72px}.section-heading{display:block;margin-bottom:33px}.section-heading .heading-side{display:block;margin-top:19px}.display-title{font-size:clamp(37px,7.1vw,55px)}
 .split-editorial,.about-layout{grid-template-columns:1fr;gap:32px}.section-aside,.about-side{min-height:0;border-right:0;border-bottom:1px solid var(--rule);padding:0 0 20px}.aside-mark,.about-side-art{display:none}.section-aside .editorial-divider{margin-top:13px}
 .service-grid,.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:355px}.service-card-bottom h3{font-size:25px}
 .process-grid{grid-template-columns:1fr;gap:35px}.process-steps>div{min-height:190px}
 .cta-inner{padding-block:69px;flex-direction:column;align-items:flex-start;gap:25px}.cta-inner>.btn{flex:0 0 auto}
 .footer-upper{grid-template-columns:1fr 1fr;gap:40px;padding-block:60px 50px}.footer-identity{grid-column:1 / -1}.footer-connect{min-width:0}.footer-lower{display:flex;flex-wrap:wrap}
 .interior-hero-grid{grid-template-columns:1fr;padding-block:65px;gap:15px;min-height:0}.interior-signature{height:auto;border-left:0;padding:0;align-items:center;flex-direction:row}.interior-signature .vertical-line{display:none}.interior-signature strong{font-size:37px;letter-spacing:-8px}
 .service-index-bar>.container{grid-template-columns:repeat(2,minmax(0,1fr))}.service-index-bar a:nth-child(even){border-right:0}
 .service-detail-layout{grid-template-columns:1fr;gap:25px}.service-detail-aside{min-height:0;border-right:0;display:flex;flex-direction:row;align-items:center;gap:18px;padding:0 0 10px}.service-detail-aside .aside-rule,.service-detail-aside p{display:none}.service-num{font-size:64px;margin:0}.service-columns{gap:33px}
 .portfolio-intro{grid-template-columns:1fr;gap:22px}.portfolio-full .work-image{height:230px}.portfolio-next{display:block}.portfolio-next .mini-label{display:block;margin-bottom:10px}
 .experience-row{grid-template-columns:116px 12px 1fr;gap:9px}.experience-detail h3{font-size:24px}
 .contact-grid{grid-template-columns:1fr;gap:44px}.contact-form-panel{padding:30px}
 .callout-simple-inner{display:flex;align-items:flex-start;flex-direction:column;gap:20px}
}
@media(max-width:520px){
 .brand-wordmark>span{letter-spacing:.045em;font-size:6px}.brand-wordmark strong{font-size:10px;letter-spacing:.13em}
 .hero-copy h1{font-size:clamp(43px,11.5vw,56px)}.hero-copy .eyebrow{letter-spacing:.1em;font-size:8px}
 .button-row{flex-direction:column;align-items:stretch}.button-row .btn{justify-content:space-between}
 .hero-visual{min-height:355px}.monogram-frame{min-height:164px;width:166px}.monogram-frame>span{font-size:87px;letter-spacing:-18px;padding-right:18px}.monogram-frame small{font-size:6px}.visual-top,.visual-bottom{font-size:6px}
 .strength-grid strong{font-size:10px}.strength-grid small{font-size:9px}
 .section{padding-block:62px}.service-grid,.work-grid,.portfolio-full{grid-template-columns:1fr}
 .service-card{min-height:290px}.service-card-bottom h3{font-size:29px}.work-image,.portfolio-full .work-image{height:250px}.work-copy p{min-height:0}
 .process-steps{grid-template-columns:1fr 1fr}.process-steps>div{padding:20px 17px;min-height:180px}.process-steps h3{font-size:22px}
 .values-grid,.tool-panels{grid-template-columns:1fr 1fr}.values-grid article{min-height:245px;padding:23px 18px}.values-grid h3{font-size:23px}.tool-panels>div{min-height:210px;padding:22px 17px}.tool-panels h3{font-size:23px}
 .footer-upper{grid-template-columns:1fr;gap:30px}.footer-identity{grid-column:auto}.footer-nav,.footer-connect{padding-top:0}.footer-lower{font-size:8px;gap:12px}
 .interior-hero h1{font-size:clamp(46px,10vw,60px)}
 .service-index-bar>.container{grid-template-columns:1fr 1fr}.service-index-bar a{font-size:9px;padding-right:7px;margin-right:7px}
 .service-columns{grid-template-columns:1fr;gap:18px}
 .experience-grid{gap:35px}.experience-row{grid-template-columns:1fr;gap:6px;padding-left:18px;margin-left:0}.timeline{padding-left:0;border-left:0}.experience-point{position:absolute;top:3px;left:0}.experience-date{padding:0 0 2px}.experience-date span{font-size:10px}.experience-top{display:block}
 .contact-form-panel{padding:23px 18px}.field-row{grid-template-columns:1fr;gap:0}.form-bottom{flex-direction:column;align-items:stretch}.form-bottom p{max-width:none}.contact-tail>.container{gap:10px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Original brand photographs sourced from the owner's My brand Google Drive folder. */
.hero-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 31%;z-index:0}
.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,29,48,.33) 0%,transparent 25%,transparent 60%,rgba(16,29,48,.75) 100%);pointer-events:none;z-index:1}
.hero-visual .graphic-corner,.hero-visual .visual-top,.hero-visual .visual-bottom{z-index:2;text-shadow:0 1px 5px rgba(0,0,0,.7);color:#F8F7F4}
.about-side .about-portrait{display:block;width:100%;height:390px;object-fit:cover;object-position:center 16%;margin:auto 0;box-shadow:0 14px 35px rgba(23,38,60,.07);border:1px solid #DDD5CB}
.work-image img{filter:saturate(.89);transition:transform .35s ease}
.work-card:hover .work-image img{transform:scale(1.035)}
.brand-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:30px}
.brand-photo-grid figure{margin:0;overflow:hidden;background:var(--navy)}
.brand-photo-grid img{display:block;width:100%;height:340px;object-fit:cover}
.branding-disclaimer{max-width:800px;color:var(--muted);font-size:13px;line-height:1.8}
@media(max-width:760px){.about-side .about-portrait{display:block;width:min(100%,330px);height:300px;object-position:center 24%;margin:16px 0}.brand-photo-grid img{height:250px}}
@media(max-width:520px){.hero-photo{object-position:center 25%}.brand-photo-grid{grid-template-columns:1fr}.brand-photo-grid img{height:235px}}

/* Anonymized portfolio work samples, with original identifiers obscured. */
.work-sample .work-image{background:#17263C}
.work-sample .work-image img{object-position:center;object-fit:cover;filter:none}
.work-sample .work-overlay{max-width:calc(100% - 20px);font-size:9px;letter-spacing:.09em}
.work-sample .work-copy p{min-height:90px}
.work-sample .work-notice{color:#586475}
@media(max-width:760px){.work-sample .work-copy p{min-height:0}}

/* Netlify Forms: clear consent checkbox, honeypot, and success state. */
.contact-form-panel .form-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}
.contact-form-panel .form-consent{display:flex;flex-direction:row;align-items:flex-start;gap:13px;text-transform:none;letter-spacing:normal;font-size:12px;font-weight:500;line-height:1.7;color:var(--ink);margin:5px 0 24px}
.contact-form-panel .form-consent input{flex:none;width:19px;height:19px;min-width:19px;margin:2px 0 0;padding:0;accent-color:var(--navy)}
.contact-form-panel .form-consent span{display:block}
.contact-form-panel .form-consent a{text-decoration:underline;text-underline-offset:3px;font-weight:700;color:var(--navy)}
.thanks-panel{max-width:720px;margin:auto;text-align:center;padding:42px 26px}
.thanks-symbol{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border:1px solid var(--taupe);border-radius:50%;font-size:30px;color:var(--navy);margin-bottom:20px}
.thanks-panel h2{font-size:clamp(36px,5vw,60px);line-height:1.1;color:var(--navy);margin:16px 0}
.thanks-panel p{max-width:580px;margin:18px auto 30px;font-size:14px;line-height:1.9;color:var(--muted)}
.thanks-panel .btn{display:inline-flex}
@media(max-width:520px){.thanks-panel{padding:10px 0 30px}}

/* Sticky service selector: one specialization at a time; stays visible during service browsing. */
.service-explorer{position:relative;isolation:isolate}
.service-tabs-bar{position:sticky;top:0;z-index:40;background:#EDEAE5;box-shadow:0 6px 18px rgba(23,38,60,.12);border-top:1px solid rgba(23,38,60,.10)}
.service-tabs-bar>.container{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-top:9px;padding-bottom:9px}
.service-tabs-bar a{position:relative;border:1px solid transparent;border-radius:3px;margin:0;padding:15px 14px;display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-size:12px;font-weight:800;line-height:1.3;min-height:62px;transition:background .15s,border .15s;color:var(--navy)}
.service-tabs-bar a:last-child{border-right:1px solid transparent;margin:0}
.service-tabs-bar .tab-num{color:#8E785F;font-size:10px;letter-spacing:.1em}
.service-tabs-bar .tab-title{flex:1}
.service-tabs-bar .tab-arrow{opacity:.45;font-size:15px;transform:rotate(0deg)}
.service-tabs-bar a[aria-selected="true"]{background:var(--navy);color:var(--ivory);border-color:var(--navy)}
.service-tabs-bar a[aria-selected="true"] .tab-num{color:var(--taupe)}
.service-tabs-bar a[aria-selected="true"] .tab-arrow{opacity:1;color:var(--taupe)}
.service-tabs-bar a:hover:not([aria-selected="true"]){background:rgba(255,255,255,.72)}
.service-tabs-bar a:focus-visible,.portfolio-filter:focus-visible,.sample-preview:focus-visible,.preview-close:focus-visible,.preview-controls button:focus-visible{outline:3px solid var(--taupe);outline-offset:2px}
.service-explorer [role="tabpanel"][hidden]{display:none!important}
.service-explorer [role="tabpanel"]{scroll-margin-top:110px;padding-top:74px;padding-bottom:88px;min-height:615px}
.service-explorer .service-detail-main>.text-action{display:inline-flex;margin-right:25px;margin-top:13px}
@media(max-width:760px){.service-tabs-bar>.container{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding-top:6px;padding-bottom:6px}.service-tabs-bar a{padding:10px 9px;min-height:45px;font-size:10px;gap:6px}.service-tabs-bar .tab-arrow{font-size:12px}.service-explorer [role="tabpanel"]{padding-top:45px;padding-bottom:60px}}
@media(max-width:420px){.service-tabs-bar .tab-title{font-size:9px}.service-tabs-bar .tab-num{font-size:9px}}

/* Portfolio: full gallery, persistent category selector, accessible previews. */
.portfolio-filter-bar{position:sticky;top:0;z-index:35;background:rgba(248,247,244,.98);backdrop-filter:blur(14px);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);box-shadow:0 5px 15px rgba(23,38,60,.08)}
.portfolio-filter-inner{display:flex;flex-wrap:wrap;align-items:center;gap:9px;padding-top:13px;padding-bottom:13px}
.portfolio-filter{appearance:none;border:1px solid #D1C9C0;background:transparent;color:var(--navy);border-radius:40px;padding:11px 16px;font:800 11px/1.4 var(--sans);letter-spacing:.015em;cursor:pointer;white-space:nowrap;min-height:42px;transition:background .2s,color .2s}
.portfolio-filter:hover{border-color:var(--taupe)}
.portfolio-filter.is-active{background:var(--navy);border-color:var(--navy);color:var(--ivory)}
.portfolio-count{margin:0 0 0 auto;color:#697282;font-size:11px;font-weight:700;white-space:nowrap}
.portfolio-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.gallery-item[hidden]{display:none!important}
.portfolio-gallery .work-image{height:208px}
.portfolio-gallery .work-copy{padding:20px 18px 24px}
.portfolio-gallery .work-copy h3{font-size:clamp(18px,1.65vw,24px);line-height:1.2;min-height:55px}
.portfolio-gallery .work-copy p{font-size:11px;line-height:1.7;min-height:70px;margin-bottom:8px}
.portfolio-gallery .work-notice{font-size:9px;line-height:1.6}
.sample-preview{display:block;position:relative;border:0;background:var(--navy);width:100%;height:100%;padding:0;cursor:zoom-in;color:var(--ivory)}
.sample-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .23s ease}
.sample-preview:hover img{transform:scale(1.035)}
.preview-prompt{position:absolute;right:12px;top:12px;z-index:2;border-radius:3px;background:rgba(23,38,60,.94);color:var(--ivory);padding:9px 11px;font:800 10px var(--sans);opacity:0;transition:opacity .15s}
.sample-preview:hover .preview-prompt,.sample-preview:focus-visible .preview-prompt{opacity:1}
.portfolio-gallery .work-overlay{pointer-events:none;font-size:8px;letter-spacing:.09em;max-width:80%;top:auto;left:auto;right:8px;bottom:8px}
.portfolio-dialog{width:min(1050px,calc(100vw - 24px));max-height:95vh;overflow:auto;padding:16px;background:var(--ivory);border:1px solid #D7DCE1;border-radius:4px;box-shadow:0 30px 100px rgba(0,0,0,.36)}
.portfolio-dialog::backdrop{background:rgba(10,18,30,.84)}
.preview-inner{position:relative}
.preview-inner img{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain;background:#EEE}
.preview-close{position:sticky;top:0;float:right;z-index:2;border:0;background:var(--navy);color:var(--ivory);font-size:30px;line-height:1;width:44px;height:44px;cursor:pointer}
.preview-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 10px 5px}
.preview-caption h3{font:400 clamp(24px,3vw,38px)/1.25 var(--serif);color:var(--navy);margin:0 0 8px}
.preview-caption p{margin:0;max-width:660px;font-size:11px;line-height:1.6;color:#68707A}
.preview-controls{display:flex;gap:9px;flex-shrink:0}
.preview-controls button{border:1px solid var(--taupe);background:transparent;color:var(--navy);width:46px;height:46px;font-size:23px;cursor:pointer}
.preview-controls button:hover{background:var(--navy);color:var(--ivory)}
@media(max-width:1000px){.portfolio-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-count{width:100%;margin-left:0}}
@media(max-width:600px){.portfolio-gallery{grid-template-columns:1fr}.portfolio-gallery .work-image{height:240px}.portfolio-gallery .work-copy h3{min-height:0}.portfolio-gallery .work-copy p{min-height:0}.portfolio-filter-inner{display:flex;flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.portfolio-count{display:none}.portfolio-filter{flex:none;font-size:10px;padding:9px 13px}.portfolio-dialog{padding:8px}.preview-caption{display:block}.preview-controls{margin-top:17px}}
/* QuickBooks Online spotlight within the switchable Bookkeeping service tab */
.quickbooks-spotlight{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);margin:10px 0 35px;border:1px solid #D9DEE5;background:#F8F7F4;overflow:hidden;border-radius:8px}
.quickbooks-spotlight-image{margin:0;min-width:0;background:#EDEAE5}
.quickbooks-spotlight-image img{display:block;width:100%;height:100%;min-height:275px;max-height:360px;object-fit:cover;object-position:center center}
.quickbooks-spotlight-copy{padding:28px 30px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.quickbooks-eyebrow{font-size:10px;font-weight:800;letter-spacing:.12em;color:#89735e}
.quickbooks-spotlight-copy h3{font:400 clamp(26px,2.6vw,36px)/1.14 var(--serif);color:var(--navy);margin:0}
.quickbooks-spotlight-copy h3 em{color:#8B7762}
.quickbooks-spotlight-copy p{font:500 12px/1.85 var(--sans);color:#374151;margin:0}
.quickbooks-spotlight-copy small{font:400 10px/1.6 var(--sans);color:#69727D;margin-top:7px}
@media(max-width:800px){.quickbooks-spotlight{grid-template-columns:1fr}.quickbooks-spotlight-image img{height:auto;max-height:300px;min-height:0}.quickbooks-spotlight-copy{padding:22px}}
