@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');
:root{
  --red:#bf0000;
  --red-dark:#790000;
  --ink:#111111;
  --charcoal:#171717;
  --charcoal-2:#222222;
  --paper:#fbf7f0;
  --cream:#f4eadc;
  --muted:#6f655d;
  --line:rgba(191,0,0,.22);
  --white:#ffffff;
  --shadow:0 24px 80px rgba(0,0,0,.18);
  --radius:22px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Montserrat',Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}
a{color:inherit}img{max-width:100%;height:auto;display:block}.topbar{position:sticky;top:0;z-index:20;background:rgba(251,247,240,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08)}.nav{max-width:var(--max);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 22px}.brand img{width:300px;max-width:40vw}.navlinks{display:flex;gap:22px;align-items:center;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.navlinks a{text-decoration:none}.navlinks a:hover{color:var(--red)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--red);color:#fff;text-decoration:none;border:0;border-radius:999px;padding:12px 20px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;box-shadow:0 12px 32px rgba(191,0,0,.24);cursor:pointer}.button.secondary{background:#fff;color:var(--ink);border:1px solid rgba(0,0,0,.12);box-shadow:none}.button.dark{background:var(--ink)}.button:hover{transform:translateY(-1px)}main{overflow:hidden}.section-inner,.hero,.page-hero{max-width:var(--max);margin:auto;padding-left:22px;padding-right:22px}.hero{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center;padding-top:72px;padding-bottom:82px}.eyebrow{color:var(--red);font-weight:900;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem;margin-bottom:14px}h1,h2,h3{line-height:1.05;margin:0;color:var(--red)}h1{font-size:clamp(2.7rem,6vw,5.85rem);letter-spacing:-.065em}h2{font-size:clamp(2rem,4vw,3.5rem);letter-spacing:-.045em}h3{font-size:1.5rem;letter-spacing:-.03em}.lead{font-size:1.22rem;color:#2f2c29;max-width:720px;margin:24px 0 0}.hero-actions,.portfolio-cta{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}.hero-media{position:relative}.hero-photo{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);background:#fff;border:8px solid #fff}.hero-note{position:absolute;left:24px;bottom:24px;background:var(--red);color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:12px 16px;border-radius:8px;box-shadow:0 14px 38px rgba(0,0,0,.25)}.brand-panel{background:var(--charcoal);color:#fff;border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:140px 1fr;gap:22px;align-items:center;margin-top:28px;box-shadow:var(--shadow)}.brand-panel img{filter:drop-shadow(0 10px 18px rgba(0,0,0,.35))}.brand-panel p{margin:0;color:#f5e7dd}.tagline-band{background:#fff;border-top:10px solid var(--red);border-bottom:10px solid var(--red)}.tagline-band .section-inner{padding-top:42px;padding-bottom:42px;text-align:center}.tagline-main{font-size:clamp(2rem,5vw,4.6rem);font-weight:1000;line-height:1;text-transform:uppercase;letter-spacing:.02em;color:var(--red);text-shadow:2px 2px 0 #fff,4px 4px 0 rgba(0,0,0,.22)}.tagline-sub{font-size:1.25rem;font-weight:900;margin-top:18px}.pill-note{display:inline-block;background:var(--red);color:#fff;padding:10px 16px;border-radius:7px;text-transform:uppercase;font-weight:900;letter-spacing:.08em;margin-top:18px}section{padding:82px 0}.section-head{display:flex;gap:36px;justify-content:space-between;align-items:end;margin-bottom:34px}.section-head p{max-width:500px;color:#514a43;margin:0;font-size:1.05rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:28px;box-shadow:0 12px 36px rgba(0,0,0,.06)}.num{font-size:.77rem;color:var(--red);font-weight:900;text-transform:uppercase;letter-spacing:.14em;margin-bottom:16px}.card p{color:#514a43;margin-bottom:0}.commercial-personal{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(0,0,0,.08);box-shadow:0 18px 50px rgba(0,0,0,.08)}.cp-box{padding:34px}.cp-box:first-child{border-right:1px solid rgba(0,0,0,.12)}.cp-box h3{text-transform:uppercase;letter-spacing:.02em}.cp-box h4{font-size:1.35rem;margin:10px 0 20px;text-transform:uppercase}.cp-box ul{margin:0;padding:0;list-style:none}.cp-box li{position:relative;padding-left:24px;margin:14px 0;color:#4e4741}.cp-box li:before{content:'';position:absolute;left:0;top:.55em;width:9px;height:9px;border-radius:50%;background:var(--red)}.photo-strip{display:grid;grid-template-columns:1.4fr .8fr;gap:20px}.feature-photo,.stack-photo{border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 16px 45px rgba(0,0,0,.12)}.feature-photo img,.stack-photo img{width:100%;height:100%;object-fit:cover}.photo-stack{display:grid;gap:20px}.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;align-items:stretch}.panel{background:linear-gradient(135deg,var(--charcoal),#080808);color:#fff;border-radius:var(--radius);padding:36px;display:flex;flex-direction:column;justify-content:space-between;min-height:370px}.panel h2{color:#fff}.panel p{color:#e9ded6}.steps{display:grid;gap:16px}.step{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:22px}.step strong{display:block;font-size:1.1rem;color:var(--red);margin-bottom:8px}.step span{color:#514a43}.quote-box{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;background:#fff;border-radius:var(--radius);padding-top:42px;padding-bottom:42px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.contact-card{background:var(--charcoal);color:#fff;border-radius:20px;padding:28px}.contact-card p{margin:0 0 18px;color:#f3e8dc}.contact-card p:last-child{margin-bottom:0}.contact-card a{color:#fff;font-size:1.45rem;font-weight:900;text-decoration:none}.page-hero{padding-top:72px;padding-bottom:46px;text-align:center}.page-hero .lead{margin-left:auto;margin-right:auto}.portfolio-grid{max-width:var(--max);margin:auto;padding:30px 22px 90px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.portfolio-item{margin:0;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 14px 38px rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.08)}.portfolio-item a{display:block;aspect-ratio:4/3;background:#eee;overflow:hidden}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.portfolio-item:hover img{transform:scale(1.025)}figcaption{padding:16px 18px}.caption-title{display:block;font-weight:900;color:var(--red);font-size:1.08rem}.caption-desc{display:block;color:#5d554e;font-size:.94rem;margin-top:4px}.contact-wrap{max-width:980px;margin:auto;padding:60px 22px 90px;display:grid;grid-template-columns:.85fr 1.15fr;gap:28px}.contact-info{background:var(--charcoal);color:#fff;border-radius:var(--radius);padding:30px}.contact-info h2{color:#fff}.phone-big{display:block;color:#fff;text-decoration:none;font-weight:1000;font-size:clamp(1.8rem,4vw,3rem);letter-spacing:.02em;margin:20px 0}.contact-info p,.contact-info li{color:#eadfd8}.form-card{background:#fff;border-radius:var(--radius);padding:30px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.08)}label{display:block;font-weight:900;margin:14px 0 6px}input,select,textarea{width:100%;border:1px solid rgba(0,0,0,.18);border-radius:12px;padding:13px 14px;font:inherit;background:#fff}textarea{min-height:150px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notice{padding:14px 16px;border-radius:12px;margin-bottom:16px;font-weight:800}.notice.success{background:#e8f7e8;color:#215b21}.notice.error{background:#ffeaea;color:#8d0000}.hp{position:absolute;left:-9999px}footer{background:#080808;color:#fff;padding:24px 0}footer .section-inner{display:flex;justify-content:space-between;gap:16px;color:#d8d0ca;font-size:.92rem}@media(max-width:900px){.nav{align-items:flex-start;flex-direction:column}.brand img{max-width:75vw}.navlinks{flex-wrap:wrap}.hero,.split,.quote-box,.contact-wrap{grid-template-columns:1fr}.section-head{display:block}.grid,.portfolio-grid{grid-template-columns:1fr 1fr}.commercial-personal,.photo-strip{grid-template-columns:1fr}.cp-box:first-child{border-right:0;border-bottom:1px solid rgba(0,0,0,.12)}}@media(max-width:620px){.grid,.portfolio-grid,.form-row{grid-template-columns:1fr}.brand-panel{grid-template-columns:1fr;text-align:center}.brand-panel img{margin:auto}.navlinks{gap:14px;font-size:.72rem}.button{width:100%}.hero-actions .button,.portfolio-cta .button{width:auto}.hero{padding-top:40px}.tagline-main{text-shadow:1px 1px 0 #fff,2px 2px 0 rgba(0,0,0,.18)}footer .section-inner{display:block}.hero-note{position:static;border-radius:0}}

/* v8 homepage refinements */
.hero h1{font-size:clamp(2.25rem,5vw,4.85rem);max-width:880px;}
.logo-showcase{display:flex;align-items:center;justify-content:center;min-height:480px;}
.hero-badge-card{background:#fff;border-radius:50%;padding:18px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.08);max-width:560px;width:100%;}
.hero-badge-card img{width:100%;height:auto;border-radius:50%;}
.commercial-personal{border:2px solid rgba(191,0,0,.18);box-shadow:0 26px 70px rgba(0,0,0,.12)}
.cp-box{padding:42px 40px;background:linear-gradient(180deg,#fff 0%,#fff 72%,#fff7f3 100%)}
.cp-box h3{font-size:clamp(2.1rem,3.8vw,3.55rem);letter-spacing:.01em;color:var(--red);}
.cp-box h4{font-size:clamp(1.4rem,2.5vw,2.1rem);line-height:1.08;margin:14px 0 24px;color:#111;}
.cp-box li{font-size:1.08rem;line-height:1.45;margin:16px 0;color:#302b27;}
.cp-box li:before{width:11px;height:11px;top:.48em;}
@media(max-width:900px){.logo-showcase{min-height:auto}.hero-badge-card{max-width:440px}}

/* v9 responsive photographic hero */
.hero-banner{width:100%;background:#090909;border-bottom:6px solid var(--red);overflow:hidden;}
.hero-banner picture,.hero-banner img{display:block;width:100%;}
.hero-banner img{height:auto;max-height:560px;object-fit:cover;object-position:center center;}
.hero-copy{grid-template-columns:1.08fr .92fr;padding-top:58px;padding-bottom:70px;}
.hero-copy .hero-brand-panel{margin-top:0;align-self:stretch;grid-template-columns:150px 1fr;}
@media(min-width:1600px){.hero-banner img{width:100%;height:auto;}}
@media(max-width:900px){.hero-banner img{height:46vw;min-height:260px;object-fit:cover;object-position:center center}.hero-copy{padding-top:42px}.hero-copy .hero-brand-panel{grid-template-columns:120px 1fr}}
@media(max-width:620px){.hero-banner img{height:72vw;min-height:320px;object-position:center center}.hero-copy .hero-brand-panel{grid-template-columns:1fr;text-align:center}.hero-copy .hero-brand-panel img{max-width:210px;margin:0 auto}}

/* v10 mobile-first readability refinements */
@media(max-width:760px){
  body{font-size:16px;line-height:1.55;background:#fffdf8;}
  .topbar{position:relative;background:#fff;border-bottom:4px solid var(--red);}
  .nav{padding:14px 16px 16px;gap:14px;align-items:center;text-align:center;}
  .brand img{width:260px;max-width:88vw;margin:auto;}
  .navlinks{width:100%;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;font-size:.74rem;letter-spacing:.06em;}
  .navlinks a{background:#f5efe8;border:1px solid rgba(0,0,0,.08);border-radius:999px;padding:9px 6px;}
  .nav>.button{width:100%;max-width:330px;padding:13px 18px;}

  .hero-banner{border-bottom:0;background:#120b08;padding:0;}
  .hero-banner img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;}

  .section-inner,.hero,.page-hero,.portfolio-grid,.contact-wrap{padding-left:18px;padding-right:18px;}
  .hero-copy{padding-top:30px;padding-bottom:46px;gap:24px;}
  .eyebrow{text-align:center;font-size:.72rem;margin-bottom:12px;}
  .hero h1{font-size:clamp(2rem,13vw,3.15rem);letter-spacing:-.045em;text-align:center;}
  .lead{font-size:1.05rem;margin-top:18px;text-align:left;}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:22px;}
  .hero-actions .button,.portfolio-cta .button{width:100%;}
  .brand-panel{padding:22px 18px;border-radius:18px;margin-top:0;gap:14px;}
  .hero-copy .hero-brand-panel img{max-width:168px;}

  section{padding:48px 0;}
  .section-head{margin-bottom:24px;text-align:left;}
  .section-head h2{font-size:clamp(1.9rem,11vw,2.65rem);}
  .section-head p{font-size:1rem;margin-top:14px;}

  .commercial-personal{border-radius:18px;}
  .cp-box{padding:28px 22px;}
  .cp-box h3{font-size:2.25rem;}
  .cp-box h4{font-size:1.35rem;margin-bottom:16px;}
  .cp-box li{font-size:1rem;margin:12px 0;padding-left:22px;}

  .card{padding:22px;border-radius:18px;}
  .grid{gap:14px;}
  .photo-strip{gap:14px;}
  .photo-stack{gap:14px;}
  .feature-photo,.stack-photo{border-radius:16px;}

  .panel{min-height:auto;padding:28px 22px;border-radius:18px;}
  .panel h2{font-size:2.15rem;}
  .panel .button{width:100%;}
  .step{padding:20px;border-radius:16px;}

  .quote-box{padding:28px 22px;gap:22px;border-radius:18px;}
  .contact-card{padding:24px 20px;border-radius:16px;}
  .contact-card a:not(.button){font-size:1.6rem;}

  .page-hero{padding-top:42px;padding-bottom:24px;}
  .portfolio-grid{padding-top:20px;padding-bottom:58px;gap:18px;}
  .portfolio-item{border-radius:16px;}
  .portfolio-item a{aspect-ratio:4/3;}
  figcaption{padding:14px 15px;}

  .contact-wrap{padding-top:28px;padding-bottom:58px;gap:18px;}
  .contact-info,.form-card{padding:24px 20px;border-radius:18px;}
  .phone-big{font-size:2rem;}
  input,select,textarea{font-size:16px;}
  footer{padding:22px 0;}
  footer .section-inner span{display:block;margin:6px 0;}
}

@media(max-width:420px){
  .brand img{width:230px;}
  .navlinks{font-size:.68rem;}
  .hero h1{font-size:2.25rem;}
  .lead{font-size:1rem;}
  .cp-box h3{font-size:2rem;}
  .panel h2{font-size:1.95rem;}
}


/* v11 requested content and layout refinements */
.hero h1{font-size:clamp(1.85rem,4.2vw,3.85rem);line-height:.98;}
.hero-copy .hero-brand-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:20px;grid-template-columns:none;}
.hero-copy .hero-brand-panel img{width:min(320px,72%);max-width:320px;margin:0 auto;}
.hero-copy .hero-brand-panel p{font-size:1.04rem;}
.hero-copy .hero-brand-panel strong{display:inline-block;font-size:clamp(1.25rem,2.2vw,1.75rem);line-height:1.12;margin-bottom:6px;color:#fff;}
.service-intro{text-align:center;display:block;margin-bottom:26px;}
.service-intro p{max-width:920px;margin:0 auto;font-size:clamp(1.15rem,2.2vw,1.65rem);font-weight:900;color:#111;line-height:1.35;}
.portfolio-hero h1{font-size:clamp(1.85rem,4.5vw,3.4rem);}
.portfolio-hero .lead{font-size:clamp(1rem,1.6vw,1.18rem);}
.portfolio-item figcaption{padding:15px 18px 17px;}
.portfolio-item .caption-title{font-size:1.04rem;}
.contact-hero h1{font-size:clamp(1.9rem,4.5vw,3.35rem);}
.contact-hero .lead{font-size:clamp(1.25rem,2.35vw,1.8rem);font-weight:800;max-width:900px;}
.contact-info h2{font-size:clamp(1.35rem,2.4vw,2rem);}
.phone-big{font-size:clamp(1.25rem,2.6vw,2.05rem);}
.phone-big.no-link{color:#fff;text-decoration:none;font-weight:1000;display:block;letter-spacing:.02em;margin:14px 0 20px;}
@media(max-width:760px){
  .hero h1{font-size:clamp(1.85rem,10.5vw,2.65rem);line-height:1.02;}
  .hero-copy .hero-brand-panel img{max-width:245px;width:78%;}
  .hero-copy .hero-brand-panel strong{font-size:1.45rem;}
  .service-intro p{text-align:left;font-size:1.18rem;}
  .portfolio-hero h1{font-size:2rem;}
  .contact-hero h1{font-size:2.05rem;}
  .contact-hero .lead{font-size:1.18rem;text-align:center;}
  .phone-big,.phone-big.no-link{font-size:1.65rem;}
}
@media(max-width:420px){.hero h1{font-size:2.05rem;}}


/* v12 mobile hero and stacked-layout refinements */
@media(max-width:760px){
  .hero-banner{background:#120b08;}
  .hero-banner img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:center top;}

  /* Remove side-by-side squeeze on mobile */
  .grid,
  .portfolio-grid,
  .form-row,
  .navlinks,
  .portfolio-cta,
  .hero-actions,
  .quote-box,
  .split,
  .contact-wrap,
  .photo-strip,
  .photo-stack{display:grid;grid-template-columns:1fr !important;}

  .navlinks a,
  .hero-actions .button,
  .portfolio-cta .button,
  .contact-card .button,
  .panel .button,
  .quote-box .button{width:100%;}

  .portfolio-cta{align-items:stretch;}
  .navlinks{width:100%;gap:10px;}
  .feature-photo,.stack-photo,.portfolio-item a{aspect-ratio:auto;}
  .contact-card p strong,
  .contact-info p strong{display:block;}
}


.contact-or{margin:10px 0 14px;font-weight:800;line-height:1.45;color:#eadfd8;text-align:left;}

.online-form-heading{color:#fff;margin:0 0 18px;font-size:clamp(1.35rem,2.4vw,2rem);}
@media(max-width:760px){
  .online-form-heading{font-size:clamp(1.35rem,7vw,2rem);}
}


/* v16 product catalog page */
.catalog-hero .lead{max-width:880px;}
.catalog-overview{padding-top:28px;padding-bottom:38px;}
.catalog-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:26px;align-items:stretch;}
.catalog-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);box-shadow:0 16px 45px rgba(0,0,0,.08);overflow:hidden;}
.catalog-cover-card{display:flex;align-items:center;justify-content:center;padding:16px;background:#fff;}
.catalog-cover-card img{border-radius:14px;box-shadow:0 10px 28px rgba(0,0,0,.14);max-height:640px;width:auto;}
.catalog-summary-card{padding:34px;display:flex;flex-direction:column;justify-content:center;}
.catalog-summary-card h2{font-size:clamp(2rem,3.8vw,3.2rem);}
.catalog-summary-card p{color:#514a43;font-size:1.05rem;}
.catalog-category-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 18px;}
.catalog-category-grid span,.catalog-category-grid a{background:#fff7f3;border:1px solid rgba(191,0,0,.16);border-radius:999px;padding:10px 13px;font-weight:800;color:#2d2926;font-size:.92rem;text-decoration:none;display:flex;align-items:center;}
.catalog-category-grid a:hover,.catalog-category-grid a:focus{border-color:var(--red);color:var(--red);background:#fff;outline:none;}
.catalog-note{background:var(--charcoal);color:#eadfd8!important;border-radius:16px;padding:15px 16px;margin:8px 0 0;}
.catalog-note strong{color:#fff;}
.catalog-viewer-section{padding-top:48px;}
.catalog-viewer-head{align-items:center;}
.catalog-viewer-head .button{flex:0 0 auto;}
.pdf-frame-wrap{background:#111;border-radius:var(--radius);padding:12px;box-shadow:var(--shadow);}
.pdf-frame{display:block;width:100%;height:min(86vh,960px);min-height:660px;border:0;border-radius:14px;background:#fff;}
.pdf-fallback{margin:14px 4px 0;color:#514a43;font-weight:700;}
.pdf-fallback a{color:var(--red);font-weight:900;}
.catalog-quote-box{margin-bottom:24px;}
.navlinks a[aria-current="page"]{color:var(--red);}
@media(max-width:900px){
  .catalog-layout{grid-template-columns:1fr;}
  .catalog-cover-card img{max-height:520px;}
  .catalog-category-grid{grid-template-columns:1fr 1fr;}
  .pdf-frame{height:78vh;min-height:560px;}
}
@media(max-width:760px){
  .catalog-overview{padding-top:10px;padding-bottom:28px;}
  .catalog-summary-card{padding:24px 20px;}
  .catalog-summary-card h2{font-size:2rem;}
  .catalog-category-grid{grid-template-columns:1fr;gap:8px;}
  .catalog-category-grid span{border-radius:14px;font-size:.92rem;}
  .catalog-viewer-section{padding-top:34px;}
  .catalog-viewer-head{display:block;}
  .catalog-viewer-head .button{width:100%;margin-top:16px;}
  .pdf-frame-wrap{padding:8px;border-radius:18px;}
  .pdf-frame{height:72vh;min-height:460px;border-radius:12px;}
  .pdf-fallback{font-size:.95rem;}
}
@media(max-width:420px){
  .catalog-cover-card{padding:10px;}
  .pdf-frame{height:68vh;min-height:420px;}
}


/* Contact form upload field */
.file-input{padding:12px;background:#fff;color:#111;border:1px solid rgba(0,0,0,.18);border-radius:12px;width:100%;}
.upload-help{font-size:.9rem;line-height:1.45;color:var(--muted);margin:8px 0 18px;}



/* v33 SEO content blocks */
.seo-service-copy{margin:26px 0 4px;background:#fff;border:1px solid rgba(0,0,0,.08);border-left:5px solid var(--red);border-radius:18px;padding:22px 24px;box-shadow:0 10px 30px rgba(0,0,0,.06);}
.seo-service-copy h2{margin:0 0 8px;font-size:clamp(1.35rem,2.4vw,2rem);color:var(--red);}
.seo-service-copy p{margin:0;color:#423c36;font-weight:600;}
.portfolio-seo{padding-top:18px;padding-bottom:18px;}
.portfolio-seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.portfolio-seo article{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:22px;box-shadow:0 10px 30px rgba(0,0,0,.06);}
.portfolio-seo h2{font-size:1.15rem;margin:0 0 8px;color:var(--red);text-transform:uppercase;letter-spacing:.04em;}
.portfolio-seo p{margin:0;color:#514a43;font-weight:600;}
@media(max-width:900px){
  .portfolio-seo-grid{grid-template-columns:1fr;}
}
