:root { --drc-black:        #0a0a0a;
--drc-dark:         #111111;
--drc-dark-2:       #1c1c1c;
--drc-green:        #28cc28;
--drc-green-neon:   #3dff3d;
--drc-green-glow:   rgba(40,204,40,.12);
--drc-white:        #ffffff;
--drc-gray:         #f4f4f4;
--drc-text:         #1a1a1a;
--drc-text-muted:   #888888;
--drc-border:       #e5e5e5;
--drc-border-dark:  #2a2a2a; --mol-green:   #192f1e;
--mol-purple:  #1a0f40;
--mol-teal:    #0a2420;
--mol-amber:   #2c1500;
--mol-pink:    #2c0018; --font-heading: 'Barlow Condensed', sans-serif;
--font-body:    'Inter', system-ui, -apple-system, sans-serif; --container:  1600px;
--topbar-h:   34px;
--navbar-h:   72px;
--radius-sm:  4px;
--radius:     8px;
--radius-lg:  12px;
--radius-xl:  24px;
} *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
html {
overflow-x: clip;
}
body {
font-family: var(--font-body);
font-size: 15px;
line-height: 1.6;
color: var(--drc-text);
background: var(--drc-white);
-webkit-font-smoothing: antialiased;
overflow-x: clip; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; font-family: inherit; border: none; background: none; }
ul { list-style: none; } .container {
max-width: var(--container);
margin: 0 auto;
padding: 0 1.5rem;
} .btn {
display: inline-flex;
align-items: center;
gap: .4rem;
padding: .7rem 1.5rem;
border-radius: var(--radius);
font-family: var(--font-body);
font-size: .8rem;
font-weight: 700;
letter-spacing: .07em;
text-transform: uppercase;
text-decoration: none;
transition: all .2s;
border: 2px solid transparent;
cursor: pointer;
white-space: nowrap;
}
.btn--primary {
background: var(--drc-green);
color: var(--drc-black);
border-color: var(--drc-green);
}
.btn--primary:hover {
background: #23b523;
border-color: #23b523;
color: var(--drc-white);
box-shadow: 0 4px 20px rgba(40,204,40,.35);
}
.btn--outline {
background: transparent;
color: var(--drc-white);
border-color: rgba(255,255,255,.45);
}
.btn--outline:hover {
border-color: var(--drc-green);
color: var(--drc-green);
background: transparent;
}
.btn--green-outline {
background: transparent;
color: var(--drc-green);
border-color: var(--drc-green);
}
.btn--green-outline:hover {
background: var(--drc-green);
color: var(--drc-black);
}
.btn--dark-outline {
background: transparent;
color: var(--drc-white);
border-color: rgba(255,255,255,.25);
}
.btn--dark-outline:hover {
background: rgba(255,255,255,.1);
border-color: rgba(255,255,255,.6);
} .sec-header { text-align: center; margin-bottom: 2.5rem; }
.sec-title {
font-family: var(--font-heading);
font-size: clamp(1.4rem, 3vw, 2rem);
font-weight: 700;
letter-spacing: .07em;
text-transform: uppercase;
color: var(--drc-text);
display: flex;
flex-direction: column;
align-items: center;
gap: .5rem;
}
.sec-title__bar {
display: block;
width: 40px;
height: 3px;
background: var(--drc-green);
border-radius: 2px;
} .stars {
display: inline-flex;
gap: 1px;
color: var(--drc-green);
}.woocommerce-message,
.woocommerce-store-notice,
.demo_store,
p.demo_store {
display: none !important;
}
.woocommerce-notices-wrapper:empty { display: none !important; }
.topbar {
background: var(--drc-black);
border-bottom: 1px solid #1a1a1a;
height: var(--topbar-h);
display: flex;
align-items: center;
overflow-x: auto;
scrollbar-width: none;
}
.topbar::-webkit-scrollbar { display: none; }
.topbar .container { overflow: visible; width: 100%; }
.topbar__items {
display: flex;
align-items: center;
justify-content: space-around;
gap: 1.2rem;
list-style: none;
white-space: nowrap;
margin: 0;
padding: 0;
width: 100%;
}
.topbar__item {
display: flex;
align-items: center;
gap: .35rem;
font-size: .68rem;
font-weight: 600;
letter-spacing: .07em;
text-transform: uppercase;
color: #999999;
}
.topbar__item svg {
width: 13px;
height: 13px;
flex-shrink: 0;
color: var(--drc-green);
}
.topbar__stars {
display: inline-flex;
gap: 1px;
color: var(--drc-green);
font-size: .75rem;
}
.topbar__score {
color: var(--drc-green);
font-weight: 800;
}
.topbar__sep {
color: #2a2a2a;
font-size: .7rem;
} .site-header {
background: var(--drc-dark);
border-bottom: 1px solid var(--drc-border-dark);
position: sticky;
top: 0;
z-index: 100;
}
.site-header__inner {
display: grid;
grid-template-columns: auto 1fr auto;
align-items: center;
gap: 2rem;
height: var(--navbar-h);
} .site-header__logo,
.custom-logo-link {
display: flex;
align-items: center;
flex-shrink: 0;
text-decoration: none;
}
.site-header__logo img,
.site-header__logo .custom-logo {
height: 52px;
width: auto;
object-fit: contain;
display: block;
}
.site-header__logo-text {
font-family: var(--font-heading);
font-size: 1.25rem;
font-weight: 800;
letter-spacing: .08em;
text-transform: uppercase;
color: var(--drc-white);
}
.site-header__logo-text .logo-dr { color: var(--drc-green); } .primary-nav { display: flex; justify-content: center; align-items: center; }
.primary-nav .menu {
display: flex;
align-items: center;
gap: .25rem;
list-style: none;
margin: 0;
padding: 0;
}
.primary-nav .menu-item > a {
display: flex;
align-items: center;
gap: .3rem;
padding: .5rem 1rem;
font-size: .84rem;
font-weight: 700;
letter-spacing: .05em;
text-transform: uppercase;
color: #aaaaaa;
border-radius: var(--radius-sm);
transition: color .2s, background .2s;
text-decoration: none;
white-space: nowrap;
}
.primary-nav .menu-item > a:hover,
.primary-nav .menu-item.current-menu-item > a,
.primary-nav .menu-item.current_page_item > a {
color: var(--drc-white);
background: rgba(255,255,255,.06);
}
.primary-nav .menu-item-has-children > a::after {
content: '\203A';
font-size: .85rem;
opacity: .65;
margin-left: .15rem;
transform: rotate(90deg);
display: inline-block;
line-height: 1;
} .primary-nav .menu-item-has-children {
position: relative;
}
.primary-nav .sub-menu {
display: none;
position: absolute;
top: calc(100% + 4px);
left: 0;
min-width: 200px;
background: #161616;
border: 1px solid var(--drc-border-dark);
border-radius: var(--radius);
padding: .4rem 0;
z-index: 200;
box-shadow: 0 12px 40px rgba(0,0,0,.6);
list-style: none;
}
.primary-nav .menu-item-has-children:hover > .sub-menu,
.primary-nav .menu-item-has-children:focus-within > .sub-menu {
display: block;
}
.primary-nav .sub-menu .menu-item > a {
display: block;
padding: .5rem 1rem;
font-size: .72rem;
font-weight: 600;
letter-spacing: .05em;
text-transform: uppercase;
color: rgba(255,255,255,.5);
white-space: nowrap;
border-radius: 0;
transition: color .15s, background .15s;
text-decoration: none;
}
.primary-nav .sub-menu .menu-item > a:hover {
color: var(--drc-white);
background: rgba(255,255,255,.06);
} .nav-fallback {
display: flex;
align-items: center;
gap: .1rem;
list-style: none;
}
.nav-fallback a {
display: block;
padding: .5rem .7rem;
font-size: .75rem;
font-weight: 700;
letter-spacing: .06em;
text-transform: uppercase;
color: #aaaaaa;
border-radius: var(--radius-sm);
transition: color .2s, background .2s;
}
.nav-fallback a:hover { color: var(--drc-white); background: rgba(255,255,255,.06); } .header-actions {
display: flex;
align-items: center;
gap: .2rem;
flex-shrink: 0;
}
.header-action-btn {
display: flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: var(--radius);
color: #999999;
background: transparent;
border: none;
transition: color .2s, background .2s;
cursor: pointer;
text-decoration: none;
position: relative;
}
.header-action-btn:hover { color: var(--drc-white); background: rgba(255,255,255,.07); }
.header-action-btn svg { width: 20px; height: 20px; } .header-cart__badge {
position: absolute;
top: 3px;
right: 3px;
min-width: 16px;
height: 16px;
background: var(--drc-green);
color: var(--drc-black);
font-size: .58rem;
font-weight: 800;
border-radius: 99px;
display: flex;
align-items: center;
justify-content: center;
padding: 0 3px;
line-height: 1;
} .prefooter-services {
background: var(--drc-dark);
padding: 1.25rem 0;
border-top: 1px solid var(--drc-border-dark);
border-bottom: 1px solid var(--drc-border-dark);
}
.prefooter-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1rem;
}
.service-item {
display: flex;
align-items: flex-start;
gap: .75rem;
}
.service-icon {
width: 34px;
height: 34px;
flex-shrink: 0;
color: var(--drc-green);
}
.service-icon svg { width: 100%; height: 100%; }
.service-title {
font-size: .72rem;
font-weight: 700;
letter-spacing: .06em;
text-transform: uppercase;
color: var(--drc-white);
margin-bottom: .2rem;
}
.service-desc {
font-size: .68rem;
color: rgba(255,255,255,.4);
line-height: 1.4;
}
.site-footer {
background: var(--drc-black);
padding: 3rem 0 1.5rem;
}
.site-footer__inner {
display: grid;
grid-template-columns: 1.5fr 1fr 1fr;
gap: 3rem;
margin-bottom: 2.5rem;
}
.site-footer__logo-text {
font-family: var(--font-heading);
font-size: 1.2rem;
font-weight: 800;
letter-spacing: .07em;
text-transform: uppercase;
color: var(--drc-white);
display: inline-block;
margin-bottom: 1rem;
}
.site-footer__logo-wrap img { height: 34px; width: auto; margin-bottom: 1rem; }
.site-footer__tagline {
font-size: .78rem;
color: rgba(255,255,255,.38);
line-height: 1.7;
max-width: 280px;
}
.site-footer__nav-title {
font-size: .68rem;
font-weight: 800;
letter-spacing: .1em;
text-transform: uppercase;
color: rgba(255,255,255,.4);
margin-bottom: .8rem;
}
.site-footer__nav .menu { display: flex; flex-direction: column; gap: .35rem; }
.site-footer__nav .menu a {
font-size: .78rem;
color: rgba(255,255,255,.4);
transition: color .2s;
}
.site-footer__nav .menu a:hover { color: var(--drc-white); }
.site-footer__bottom {
border-top: 1px solid #1a1a1a;
padding-top: 1.25rem;
text-align: center;
}
.site-footer__bottom p {
font-size: .72rem;
color: rgba(255,255,255,.25);
} .drc-nav-details { display: none; }  .screen-reader-text {
position: absolute !important;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.drc-search { position: relative; } .drc-search__toggle { list-style: none; }
.drc-search__toggle::-webkit-details-marker { display: none; }
.drc-search__toggle::marker { content: ''; }
.drc-search__panel {
position: absolute;
top: calc(100% + .6rem);
right: 0;
z-index: 60;
width: min(360px, calc(100vw - 2rem));
padding: .9rem;
background: var(--drc-dark-2);
border: 1px solid var(--drc-border-dark);
border-radius: var(--radius);
box-shadow: 0 18px 40px rgba(0, 0, 0, .45);
} .drc-search-form { margin: 0; }
.drc-search-form__row {
display: flex;
align-items: stretch;
gap: .4rem;
}
.drc-search-form__input {
flex: 1 1 auto;
min-width: 0;
padding: .6rem .8rem;
font-size: .9rem;
color: #fff;
background: rgba(255, 255, 255, .05);
border: 1px solid var(--drc-border-dark);
border-radius: var(--radius-sm);
}
.drc-search-form__input::placeholder { color: #7d848c; }
.drc-search-form__input:focus {
outline: none;
border-color: var(--drc-green);
background: rgba(255, 255, 255, .08);
}
.drc-search-form__submit {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 auto;
width: 42px;
color: #0a0a0a;
background: var(--drc-green);
border: none;
border-radius: var(--radius-sm);
cursor: pointer;
transition: background .2s;
}
.drc-search-form__submit:hover { background: var(--drc-green-neon); }
.drc-search-form__submit svg { width: 18px; height: 18px; }
.drc-search-form__hint {
margin: .55rem 0 0;
font-size: .78rem;
color: #ffb4b4;
}
.drc-search-form__hint[hidden] { display: none; }.prefooter-services {
background: var(--drc-dark);
border-top: 1px solid var(--drc-border-dark);
padding: 2.2rem 0;
}
.prefooter-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1.5rem;
}
.service-item {
display: flex;
align-items: center;
gap: .85rem;
}
.service-icon {
flex: 0 0 auto;
width: 46px;
height: 46px;
display: grid;
place-items: center;
border-radius: 50%;
background: var(--drc-green-glow);
border: 1px solid rgba(40, 204, 40, .35);
}
.service-icon svg {
width: 22px;
height: 22px;
color: var(--drc-green);
}
.service-title {
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: .04em;
font-size: .95rem;
color: #fff;
line-height: 1.1;
margin-bottom: .15rem;
}
.service-desc {
font-size: .8rem;
color: #9aa1a9;
line-height: 1.35;
} .site-footer {
background: var(--drc-black);
color: #c8ced6;
padding: 3rem 0 1.5rem;
border-top: 1px solid var(--drc-border-dark);
}
.site-footer__inner {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 2.5rem;
padding-bottom: 2.5rem;
border-bottom: 1px solid var(--drc-border-dark);
}
.site-footer__logo-wrap img,
.site-footer__logo-text img { height: 52px; width: auto; }
.site-footer__logo-text {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: 1.8rem;
font-weight: 700;
letter-spacing: .04em;
color: #fff;
}
.site-footer__tagline {
margin-top: 1rem;
max-width: 360px;
font-size: .88rem;
line-height: 1.6;
color: #9aa1a9;
}
.site-footer__nav-title {
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: .05em;
font-size: 1.05rem;
color: #fff;
margin-bottom: 1rem;
position: relative;
padding-bottom: .6rem;
}
.site-footer__nav-title::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 32px;
height: 2px;
background: var(--drc-green);
border-radius: 2px;
}
.site-footer__nav .menu {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: .55rem;
}
.site-footer__nav .menu a {
color: #b5bcc4;
font-size: .9rem;
transition: color .18s, padding-left .18s;
}
.site-footer__nav .menu a:hover {
color: var(--drc-green);
padding-left: .35rem;
}
.site-footer__bottom {
padding-top: 1.5rem;
text-align: center;
font-size: .82rem;
color: #7d848c;
} @media (max-width: 900px) {
.prefooter-grid { grid-template-columns: 1fr 1fr; }
.site-footer__inner { grid-template-columns: 1fr 1fr; gap: 1.8rem; }
.site-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 560px) {
.prefooter-grid { grid-template-columns: 1fr; }
.site-footer__inner { grid-template-columns: 1fr; }
.site-footer__tagline { max-width: none; }
}.site-main.page-standard {
background: var(--drc-black);
color: #d5dbe2;
} .page-hero {
position: relative;
overflow: hidden;
background: var(--drc-dark);
border-bottom: 1px solid var(--drc-border-dark);
padding: 3.4rem 1.5rem 3rem;
}
.page-hero::before {
content: '';
position: absolute;
top: -40%;
left: 50%;
transform: translateX(-50%);
width: 720px;
height: 720px;
background: radial-gradient(circle, rgba(40, 204, 40, .16), transparent 62%);
pointer-events: none;
}
.page-hero__inner {
position: relative;
max-width: var(--container);
margin: 0 auto;
text-align: center;
}
.page-hero__crumbs {
display: flex;
align-items: center;
justify-content: center;
gap: .45rem;
font-size: .8rem;
color: #8b929a;
margin-bottom: .9rem;
}
.page-hero__crumbs a { color: #b5bcc4; }
.page-hero__crumbs a:hover { color: var(--drc-green); }
.page-hero__crumbs-current { color: var(--drc-green); }
.page-hero__title {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: clamp(2rem, 4.5vw, 3rem);
line-height: 1.05;
letter-spacing: .02em;
color: #fff;
margin: 0;
} .page-content {
max-width: 900px;
margin: 0 auto;
padding: 2.8rem 1.5rem 4rem;
} .page-body {
font-size: .96rem;
line-height: 1.75;
color: #c2c9d1;
}
.page-body > *:first-child { margin-top: 0; }
.page-body h1,
.page-body h2,
.page-body h3,
.page-body h4 {
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: .02em;
color: #fff;
line-height: 1.2;
margin: 2.2rem 0 .9rem;
}
.page-body h2 {
font-size: 1.5rem;
padding-bottom: .5rem;
border-bottom: 1px solid var(--drc-border-dark);
}
.page-body h2::before {
content: '';
display: inline-block;
width: 20px;
height: 3px;
background: var(--drc-green);
border-radius: 2px;
vertical-align: middle;
margin-right: .6rem;
}
.page-body h3 { font-size: 1.2rem; color: var(--drc-green); }
.page-body h4 { font-size: 1.02rem; }
.page-body p { margin: 0 0 1.1rem; }
.page-body a {
color: var(--drc-green);
text-decoration: underline;
text-underline-offset: 2px;
}
.page-body a:hover { color: var(--drc-green-neon); }
.page-body strong { color: #fff; }
.page-body ul,
.page-body ol {
margin: 0 0 1.2rem;
padding-left: 1.4rem;
}
.page-body ul { list-style: none; padding-left: 0; }
.page-body ul li {
position: relative;
padding-left: 1.5rem;
margin-bottom: .5rem;
}
.page-body ul li::before {
content: '';
position: absolute;
left: 0;
top: .58em;
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--drc-green);
}
.page-body ol li { margin-bottom: .5rem; }
.page-body blockquote {
margin: 1.4rem 0;
padding: 1rem 1.3rem;
border-left: 3px solid var(--drc-green);
background: var(--drc-dark);
border-radius: 0 8px 8px 0;
color: #d5dbe2;
}
.page-body img { border-radius: 10px; margin: 1.2rem 0; max-width: 100%; height: auto; } .page-body .wp-caption,
.page-body .alignnone,
.page-body .aligncenter,
.page-body .alignleft,
.page-body .alignright {
max-width: 100% !important;
width: auto !important;
height: auto;
}
.page-body .wp-caption img { width: 100%; height: auto; }
.page-body table {
width: 100%;
border-collapse: collapse;
margin: 1.4rem 0;
border: 1px solid var(--drc-border-dark);
border-radius: 10px;
overflow: hidden;
}
.page-body th,
.page-body td {
padding: .8rem 1rem;
border-bottom: 1px solid var(--drc-border-dark);
text-align: left;
}
.page-body th { background: var(--drc-dark); color: #fff; } .page-standard .page-title { display: none; } .about-section { padding: 3.2rem 1.5rem; }
.about-section:nth-child(even) { background: var(--drc-dark); }
.about-wrap { max-width: var(--container); margin: 0 auto; }
.about-intro {
max-width: 820px;
margin: 0 auto;
text-align: center;
}
.about-eyebrow {
display: inline-block;
font-size: .72rem;
font-weight: 700;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--drc-green);
margin-bottom: .7rem;
}
.about-heading {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: clamp(1.6rem, 3.2vw, 2.3rem);
color: #fff;
line-height: 1.1;
margin: 0 0 1rem;
}
.about-lead {
font-size: 1.05rem;
line-height: 1.7;
color: #b5bcc4;
}
.about-values {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 1.2rem;
margin-top: 2.4rem;
}
.about-value {
background: var(--drc-black);
border: 1px solid var(--drc-border-dark);
border-radius: 14px;
padding: 1.6rem 1.4rem;
text-align: center;
transition: border-color .2s, transform .2s;
}
.about-value:hover { border-color: var(--drc-green); transform: translateY(-4px); }
.about-value__icon {
width: 54px;
height: 54px;
margin: 0 auto .9rem;
display: grid;
place-items: center;
border-radius: 50%;
background: var(--drc-green-glow);
border: 1px solid rgba(40, 204, 40, .35);
}
.about-value__icon svg { width: 26px; height: 26px; color: var(--drc-green); }
.about-value h3 {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: 1.15rem;
color: #fff;
margin: 0 0 .5rem;
}
.about-value p { font-size: .88rem; color: #a6adb5; line-height: 1.6; margin: 0; }
.about-stats {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1.2rem;
margin-top: 2.6rem;
}
.about-stat { text-align: center; }
.about-stat__num {
font-family: var(--font-heading);
font-size: clamp(2rem, 4vw, 3rem);
color: var(--drc-green);
line-height: 1;
}
.about-stat__label {
font-size: .82rem;
text-transform: uppercase;
letter-spacing: .05em;
color: #9aa1a9;
margin-top: .4rem;
}
.about-cta {
text-align: center;
margin-top: 2.6rem;
} .contact-layout {
display: grid;
grid-template-columns: 1fr 1.3fr;
gap: 2rem;
max-width: 1200px;
margin: 0 auto;
}
.contact-info { display: flex; flex-direction: column; gap: 1rem; }
.contact-card {
display: flex;
gap: 1rem;
align-items: flex-start;
background: var(--drc-dark);
border: 1px solid var(--drc-border-dark);
border-radius: 14px;
padding: 1.3rem;
}
.contact-card__icon {
flex: 0 0 auto;
width: 46px;
height: 46px;
display: grid;
place-items: center;
border-radius: 50%;
background: var(--drc-green-glow);
border: 1px solid rgba(40, 204, 40, .35);
}
.contact-card__icon svg { width: 22px; height: 22px; color: var(--drc-green); }
.contact-card__title {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: 1.02rem;
color: #fff;
margin: 0 0 .25rem;
}
.contact-card__text { font-size: .9rem; color: #a6adb5; line-height: 1.55; }
.contact-card__text a { color: var(--drc-green); }
.contact-form-wrap {
background: var(--drc-dark);
border: 1px solid var(--drc-border-dark);
border-radius: 16px;
padding: 1.8rem;
}
.contact-form-wrap h2 {
font-family: var(--font-heading);
text-transform: uppercase;
font-size: 1.4rem;
color: #fff;
margin: 0 0 .4rem;
}
.contact-form-wrap > p { color: #a6adb5; font-size: .9rem; margin: 0 0 1.4rem; }
.contact-form { display: grid; gap: 1rem; }
.contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.contact-form label {
display: block;
font-size: .8rem;
font-weight: 600;
color: #b9c0c8;
margin-bottom: .4rem;
}
.contact-form input,
.contact-form textarea,
.contact-form select {
width: 100%;
background: var(--drc-black);
border: 1px solid var(--drc-border-dark);
border-radius: 9px;
color: #fff;
padding: .8rem .9rem;
font-size: .9rem;
font-family: var(--font-body);
transition: border-color .18s, box-shadow .18s;
}
.contact-form textarea { min-height: 140px; resize: vertical; }
.contact-form input:focus,
.contact-form textarea:focus,
.contact-form select:focus {
outline: none;
border-color: var(--drc-green);
box-shadow: 0 0 0 3px rgba(40, 204, 40, .16);
}
.contact-form input::placeholder,
.contact-form textarea::placeholder { color: #6b7178; }
.contact-form__submit {
justify-self: start;
display: inline-flex;
align-items: center;
gap: .5rem;
border: 0;
border-radius: 9px;
background: var(--drc-green);
color: #06210a;
font-family: var(--font-heading);
text-transform: uppercase;
letter-spacing: .04em;
font-weight: 700;
font-size: .95rem;
padding: .85rem 1.8rem;
cursor: pointer;
transition: background .2s, box-shadow .2s;
}
.contact-form__submit:hover {
background: var(--drc-green-neon);
box-shadow: 0 6px 20px rgba(40, 204, 40, .32);
}
.contact-form__notice {
padding: .9rem 1.1rem;
border-radius: 9px;
font-size: .9rem;
}
.contact-form__notice.is-success {
background: rgba(40, 204, 40, .12);
border: 1px solid rgba(40, 204, 40, .4);
color: var(--drc-green);
}
.contact-form__notice.is-error {
background: rgba(220, 38, 38, .1);
border: 1px solid rgba(220, 38, 38, .4);
color: #ff6b6b;
} @media (max-width: 900px) {
.about-values { grid-template-columns: 1fr; }
.about-stats { grid-template-columns: 1fr 1fr; }
.contact-layout { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
.contact-form__row { grid-template-columns: 1fr; }
}