/*
Theme Name: R.W. Communications
Theme URI: https://rwcommunications.com/
Author: R.W. Communications
Description: A lightweight, accessible WordPress theme for R.W. Communications. Content uses the native block editor.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: rwc
License: GPL-2.0-or-later
*/
@font-face{font-family:Inter;src:url('assets/inter.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--red:#c40000;--dark:#203b4b;--ink:#273a46;--muted:#52636f;--pale:#f3f6fb;--line:#e1e7ee;--max:1160px;--radius:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.75}a{color:#b60000;text-underline-offset:3px}a:hover{color:#850000}img{max-width:100%;height:auto}h1,h2,h3,h4{color:var(--dark);line-height:1.22;font-weight:750;letter-spacing:-.025em}h1{font-size:clamp(2.2rem,4.4vw,3.75rem);margin:0 0 24px}h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:0 0 24px}h3{font-size:1.35rem;margin:0 0 16px}p{margin:0 0 22px}ul,ol{padding-left:24px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid #165bd8;outline-offset:4px}.container{max-width:var(--max);width:calc(100% - 48px);margin-inline:auto}.skip-link{position:fixed;left:16px;top:-100px;z-index:1000;padding:10px 20px;background:#fff;color:#111}.skip-link:focus{top:12px}.site-header{background:linear-gradient(100deg,#c90000,#2b0202 85%);color:#fff}.header-inner{display:flex;align-items:center;gap:26px;min-height:104px}.brand{display:flex;flex-shrink:0;background:#fff;border-radius:2px;padding:3px;width:140px}.brand img{width:134px;height:auto;display:block}.site-nav{margin-left:auto}.site-nav .menu{list-style:none;display:flex;gap:24px;padding:0;margin:0;align-items:center}.site-nav li{position:relative}.site-nav a{color:#fff;text-decoration:none;font-size:13px;font-weight:650;white-space:nowrap;padding:14px 0;display:block}.site-nav a:hover{text-decoration:underline}.sub-menu{list-style:none;display:none;position:absolute;background:#fff;min-width:240px;box-shadow:0 12px 40px #0003;border-radius:8px;top:100%;left:-18px;padding:12px 18px;margin:0;z-index:100}.site-nav .sub-menu a{color:var(--dark);white-space:normal;padding:8px 0}.site-nav li:hover>.sub-menu,.site-nav li:focus-within>.sub-menu,.site-nav .submenu-open>.sub-menu{display:block}.submenu-toggle{display:none}.header-call{padding-left:24px;border-left:1px solid #ffffff40;flex-shrink:0;font-size:12px;line-height:1.6}.header-call a{color:#fff;text-decoration:none;font-size:16px;font-weight:750;display:block}.menu-toggle{display:none;background:transparent;color:white;border:1px solid #ffffff90;border-radius:5px;padding:8px 12px}.site-main:focus{outline:none}.entry-content>.wp-block-group{margin-block:0}.entry-content>.rwc-section{padding:84px max(24px,calc((100vw - var(--max))/2));max-width:none}.entry-content>.rwc-section>*,.entry-content>.rwc-section>.wp-block-group__inner-container>*{max-width:none}.rwc-section>*:last-child{margin-bottom:0}.rwc-section.pale{background:var(--pale)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;font-size:12px;color:var(--red);margin-bottom:16px}.center{text-align:center}.lead{font-size:18px;line-height:1.7;max-width:760px}.muted{color:var(--muted)}.wp-block-columns{display:flex;gap:44px;margin-bottom:0;align-items:flex-start}.wp-block-column{flex:1;min-width:0}.wp-block-columns.align-center{align-items:center}.hero{background:linear-gradient(100deg,#c90000 5%,#690000 60%,#100000);border-bottom-left-radius:110px;overflow:hidden;padding-top:40px!important;padding-bottom:0!important;color:white}.hero h1,.hero h2,.hero p{color:#fff}.hero h1{max-width:620px;font-size:clamp(2.55rem,4.65vw,4.15rem);line-height:1.08}.hero .eyebrow{color:#ffd7d7}.hero .wp-block-columns{align-items:center;gap:40px}.hero .wp-block-column:first-child{padding:45px 0 75px;flex-basis:57%}.hero .wp-block-column:last-child{flex-basis:43%;align-self:flex-end}.hero .hero-image{margin:0;max-width:460px;margin-inline:auto;line-height:0}.hero .hero-image img{display:block;width:100%;height:auto}.hero .lead{max-width:590px}.hero .hero-note{font-size:13px;margin-top:24px;color:#ffe3e3}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:14px}.wp-block-button__link,.button{display:inline-block;background:var(--red);border:0;border-radius:6px;color:#fff;text-decoration:none;padding:14px 24px;font-size:14px;line-height:1.45;font-weight:650;text-align:center;cursor:pointer}.wp-block-button__link:hover,.button:hover{background:#990000;color:#fff}.hero .wp-block-button:first-child .wp-block-button__link{background:#fff;color:var(--dark)}.hero .wp-block-button:last-child .wp-block-button__link{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px #ffffff90}.rwc-photo{margin:0;position:relative}.rwc-photo img{display:block;border-radius:var(--radius);width:100%;object-fit:cover}.rwc-photo figcaption{font-size:13px;color:var(--muted);margin-top:12px;text-align:left}.experience-note{background:var(--red);color:#fff;padding:24px 28px;margin:20px 0 0;max-width:380px;border-radius:0 0 16px 0}.experience-note strong{display:block;font-size:22px}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.service-card{border:1px solid var(--line);padding:28px;border-radius:var(--radius);background:#fff;display:flex;flex-direction:column;transition:box-shadow .15s,border-color .15s}.service-card:hover{border-color:#d4aaaa;box-shadow:0 8px 30px #203b4b0c}.service-card .wp-block-image{height:94px;margin:0 0 24px;display:flex;align-items:center}.service-card .wp-block-image img{max-height:94px;width:auto;max-width:130px}.service-card p{font-size:14px;line-height:1.7;flex-grow:1;color:var(--muted)}.service-card h3 a{color:var(--dark);text-decoration:none}.service-card .card-link{font-size:13px;font-weight:700;color:var(--red);margin-bottom:0}.service-card .card-link a{text-decoration:none}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.case-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.case-card:nth-child(2),.case-card:nth-child(3){background:linear-gradient(110deg,#c00000,#580000);color:#fff;border:0}.case-card:nth-child(2) h3,.case-card:nth-child(3) h3{color:#fff}.case-card:nth-child(2) a,.case-card:nth-child(3) a{color:#fff}.case-card p{font-size:14px}.case-card h3{font-size:1.2rem}.trust-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border-top:1px solid var(--line);margin-top:44px;padding-top:28px}.trust-strip p{margin:0;font-size:14px}.trust-strip strong{display:block;font-size:21px;color:var(--dark);margin-bottom:4px}.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:930px;margin:36px auto 0}.team-card{text-align:center}.team-card .wp-block-image{margin:0 0 20px}.team-card img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 30%;border-radius:var(--radius)}.team-card h3{font-size:18px;margin-bottom:8px}.team-card h3 a{text-decoration:none;color:var(--dark)}.team-card p{font-size:13px;color:var(--red)}.team-grid.all-team{grid-template-columns:repeat(4,minmax(0,1fr));max-width:none}.rwc-faq{padding:20px 0;border-bottom:1px solid #d8e1ea}.rwc-faq summary{font-weight:650;font-size:16px;cursor:pointer;line-height:1.45;color:var(--dark);padding-right:20px}.rwc-faq p{margin-top:16px;margin-bottom:0;color:var(--muted);font-size:15px}.cta-band{background:linear-gradient(110deg,#c00000,#420000);color:#fff;padding:40px;border-radius:var(--radius);display:flex;gap:30px;align-items:center;justify-content:space-between}.cta-band h2{color:#fff;font-size:1.8rem;margin-bottom:12px}.cta-band p{margin:0;font-size:15px}.cta-band .wp-block-button__link{background:#fff;color:var(--dark);white-space:nowrap}.area-chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:28px 0}.area-chips li{padding:8px 14px;border:1px solid var(--line);border-radius:5px;background:#fff;font-size:14px}.page-banner{padding:56px 0;background:var(--pale);border-bottom:1px solid var(--line)}.page-banner h1{font-size:clamp(2.2rem,4vw,3.1rem);max-width:930px;margin-bottom:16px}.breadcrumbs{font-size:12px;color:var(--muted);margin:0 0 22px;display:flex;flex-wrap:wrap;gap:8px}.breadcrumbs a{color:var(--muted)}.page-banner p{max-width:820px;margin-bottom:0}.page-content{padding:65px 0 80px}.page-content>p,.page-content>h2,.page-content>h3,.page-content>ul,.page-content>ol,.page-content>details{max-width:850px}.page-content h2{font-size:1.9rem;margin-top:40px}.page-content h3{margin-top:30px}.page-content .wp-block-group h2:first-child{margin-top:0}.page-content .rwc-section{padding:35px 0}.page-content .rwc-section.pale{padding:32px;border-radius:var(--radius)}.page-content .rwc-faq{max-width:850px}.page-content .wp-block-columns{margin-bottom:36px}.service-aside{background:var(--pale);padding:26px;border-radius:var(--radius);position:sticky;top:24px}.service-aside a{display:block;padding:8px 0;text-decoration:none;font-size:14px}.service-layout>.wp-block-column:first-child{flex-basis:72%;flex-grow:3}.service-layout>.wp-block-column:last-child{flex-basis:28%;flex-grow:1}.service-process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.process-card{background:var(--pale);padding:24px;border-radius:var(--radius)}.process-card h3{font-size:1.05rem}.process-card p{font-size:14px}.profile .wp-block-column:first-child{flex-basis:28%;flex-grow:1}.profile .wp-block-column:last-child{flex-basis:72%;flex-grow:2}.profile img{max-height:460px;object-fit:cover;object-position:top}.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.blog-card{border:1px solid var(--line);border-radius:var(--radius);padding:28px;background:#fff}.blog-card h2,.blog-card h3{font-size:1.2rem;margin-top:0}.blog-card a{color:var(--dark);text-decoration:none}.blog-card .eyebrow{color:var(--red);font-size:11px}.blog-card p{font-size:14px;color:var(--muted)}.blog-card .read-more{color:var(--red);font-weight:650;font-size:13px}.article-shell{max-width:850px}.article-meta{font-size:13px;color:var(--muted);margin-top:20px}.article-content h2{font-size:1.8rem;margin-top:42px}.article-content h3{margin-top:30px;font-size:1.25rem}.article-content a{overflow-wrap:anywhere}.article-content blockquote{margin:32px 0;padding:22px 28px;border-left:3px solid var(--red);background:var(--pale)}.pagination{margin-top:36px}.pagination .page-numbers{display:inline-block;padding:7px 14px;margin-right:8px;border:1px solid var(--line)}.contact-layout>.wp-block-column:first-child{flex-grow:2;flex-basis:65%}.contact-layout>.wp-block-column:last-child{flex-grow:1;flex-basis:35%}.rwc-form{border:1px solid var(--line);border-radius:var(--radius);padding:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{margin-bottom:20px}.form-field label{display:block;color:var(--dark);font-size:14px;font-weight:600;margin-bottom:6px}.form-field input,.form-field textarea,.form-field select{width:100%;padding:11px 12px;border:1px solid #a9b8c4;border-radius:5px;color:var(--ink);background:white;min-height:48px}.form-field textarea{min-height:150px;resize:vertical}.form-help{font-size:12px;color:var(--muted);margin:18px 0 0}.rwc-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.form-notice{background:#edf7ef;border:1px solid #71a47e;padding:18px;border-radius:7px;margin-bottom:24px;color:#244c30}.form-notice.error{background:#fff2f2;border-color:#c44;color:#7a1313}.contact-info{background:var(--pale);padding:30px;border-radius:var(--radius)}.contact-info h3{margin-top:0}.contact-info a{overflow-wrap:anywhere}.site-footer{background:#bd0000;color:#fff;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1.35fr;gap:40px}.footer-brand{max-width:260px}.footer-brand img{background:#fff;padding:5px;width:150px;height:auto;margin-bottom:20px}.site-footer h2{font-size:15px;letter-spacing:0;color:#fff;margin-bottom:20px}.site-footer p,.site-footer a{font-size:13px;color:#fff}.site-footer a{text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin-bottom:7px}.footer-bottom{border-top:1px solid #ffffff40;margin-top:36px;padding-top:24px;display:flex;justify-content:space-between;gap:24px;font-size:12px}.footer-bottom p{margin:0}.cookie-notice{position:fixed;bottom:18px;left:18px;right:18px;max-width:600px;z-index:200;background:#fff;color:var(--ink);padding:22px;border:1px solid var(--line);box-shadow:0 4px 30px #0003;border-radius:8px;font-size:13px}.cookie-notice p{margin-bottom:14px}.cookie-actions{display:flex;gap:12px}.cookie-actions button{padding:8px 16px;font-size:12px}.button.secondary{background:#edf0f5;color:var(--dark)}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.case-card:nth-child(2) .eyebrow,.case-card:nth-child(3) .eyebrow{color:#ffd7d7}
@media(min-width:960px){.submenu-toggle{display:inline-block;position:absolute;right:-14px;top:16px;border:0;background:none;color:#fff;padding:0;font-size:10px;width:12px;line-height:20px}}
@media(max-width:1120px){.site-nav .menu{gap:17px}.header-call{display:none}.header-inner{gap:20px}.services-grid{gap:18px}.service-card{padding:24px}}
@media(max-width:959px){.header-inner{min-height:86px;flex-wrap:wrap}.menu-toggle{display:block;margin-left:auto}.site-nav{width:100%;margin:0;padding-bottom:20px}.js-nav .site-nav{display:none}.js-nav .site-nav.is-open{display:block}.site-nav .menu{display:block}.site-nav a{padding:11px 0;font-size:15px}.site-nav .sub-menu{position:static;box-shadow:none;background:#ffffff0d;border-radius:0;display:block;padding:4px 20px;min-width:0}.site-nav .sub-menu a{color:#fff;font-size:14px}.js-nav .site-nav .sub-menu{display:none}.js-nav .site-nav .submenu-open>.sub-menu{display:block}.submenu-toggle{display:block;position:absolute;right:0;top:4px;color:#fff;background:none;border:1px solid #ffffff60;padding:6px 12px;min-height:36px}.hero .wp-block-column:first-child{padding:25px 0 55px}.hero{border-bottom-left-radius:65px}.wp-block-columns{gap:28px}.entry-content>.rwc-section{padding-block:64px}.services-grid,.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.team-grid.all-team{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-strip{gap:20px}.trust-strip strong{font-size:18px}}
@media(max-width:700px){.container{width:calc(100% - 36px)}.entry-content>.rwc-section{padding:52px 18px}.wp-block-columns{flex-direction:column;gap:30px}.wp-block-column{width:100%;flex-basis:auto!important}.hero .wp-block-columns{flex-direction:row;flex-wrap:wrap;gap:0}.hero .wp-block-column:first-child{width:100%;flex-basis:100%!important;padding:20px 0 30px}.hero .wp-block-column:last-child{width:100%;flex-basis:100%!important}.hero .hero-image{max-width:280px}.hero h1{font-size:2.65rem}.hero .lead{font-size:16px}.hero .hero-note{margin-top:18px}.hero{border-bottom-left-radius:50px}.services-grid,.case-grid,.blog-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.team-card h3{font-size:14px}.team-card p{font-size:11px}.team-grid.all-team{gap:22px}.team-grid.all-team h3{font-size:16px}.service-card{padding:24px}.service-card .wp-block-image{height:75px;margin-bottom:20px}.service-card .wp-block-image img{max-height:75px}.trust-strip{grid-template-columns:1fr;gap:18px}.trust-strip strong{font-size:18px}.trust-strip p{font-size:14px}.cta-band{flex-direction:column;align-items:flex-start;padding:28px}.page-banner{padding:38px 0}.page-content{padding:42px 0 60px}.page-content .rwc-section.pale{padding:24px}.service-process{grid-template-columns:1fr}.service-aside{position:static}.form-grid{grid-template-columns:1fr;gap:0}.rwc-form,.contact-info{padding:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px}.footer-brand{grid-column:1/-1;max-width:none}.footer-bottom{flex-direction:column;gap:12px}.footer-grid>div:last-child{grid-column:1/-1}.site-footer{padding-top:45px}.profile .wp-block-column:first-child{max-width:300px}.article-content h2{font-size:1.55rem}.lead{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
