/*
Theme Name: Royal Security Services
Author: Royal Security Services
Description: A brochure-inspired, multi-page website for Royal Security and Royal Hospitality Services. Includes editable starter pages, a setup screen and configurable contact details.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: royal-security
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--gold:#f5b400;--ink:#1b1d1b;--muted:#606660;--soft:#f3f4f1;--line:#dfe2dc;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea{font:inherit}button{cursor:pointer}figure{margin:0}p{margin:0 0 1.2em}h1,h2,h3,h4{font-weight:800;line-height:1.16;margin:0 0 .55em}h1{font-size:clamp(42px,5.8vw,78px);letter-spacing:-2.4px}h2{font-size:clamp(30px,3.5vw,46px);letter-spacing:-1.3px}h3{font-size:23px;letter-spacing:-.4px}.container{width:min(1220px,90%);margin-inline:auto}.section{padding-block:85px}.kicker{font-size:12px;font-weight:800;letter-spacing:2px;line-height:1.6;text-transform:uppercase;display:block;margin-bottom:19px}.kicker:before{content:'';display:inline-block;width:26px;height:3px;background:var(--gold);margin:0 12px 3px 0}.topbar{background:var(--ink);color:white;font-size:12px;padding:9px 0;letter-spacing:1px}.topbar .container{display:flex;justify-content:space-between;gap:15px}.topbar b{color:var(--gold);padding:0 10px}.topbar a{text-decoration:none}.site-header{position:sticky;top:0;z-index:100;background:#fffffff5;backdrop-filter:blur(12px);border-bottom:1px solid #e5e7e3}.admin-bar .site-header{top:32px}.header-row{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:100px}.brand{display:flex;gap:13px;align-items:center;flex-shrink:0}.brand img{width:64px;height:64px;object-fit:contain}.brand-name{font-family:Georgia,serif;font-size:32px;letter-spacing:4px;line-height:1.1;text-decoration:none}.brand-name span{display:block;font-family:Arial,sans-serif;font-size:10px;font-weight:bold;letter-spacing:1.8px;margin-top:6px}.nav-list{list-style:none;display:flex;align-items:center;gap:27px;margin:0;padding:0}.nav-list a{font-size:14px;font-weight:700;text-decoration:none;display:block;padding:12px 0;white-space:nowrap}.nav-list li:last-child a{padding:13px 20px;background:var(--gold);color:var(--ink)}.nav-list .current-menu-item>a{box-shadow:inset 0 -3px var(--gold)}.nav-list a:hover{color:#8f6500}.nav-list li:last-child a:hover{background:#ffcc3e;color:var(--ink)}.menu-toggle{display:none}.skip-link{position:absolute;left:10px;top:-100px;z-index:9999;background:var(--ink);color:white;padding:12px}.skip-link:focus{top:10px}.button,.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;background:var(--gold);color:var(--ink);font-weight:bold;font-size:14px;border:1px solid transparent;border-radius:0;padding:15px 23px;line-height:1.5;transition:background .15s}.button:hover,.wp-block-button__link:hover{background:#ffcb35;color:var(--ink)}.button.dark{background:var(--ink);color:white}.button.dark:hover{background:#353a34}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:15px;margin-top:28px}.wp-block-button.is-style-outline>.wp-block-button__link{background:transparent;border:1px solid #686f65;color:var(--ink)}.wp-block-button.is-style-outline>.wp-block-button__link:hover{background:#e8eae4}.page-content{overflow:clip}.page-content>.wp-block-group{margin-block:0}.royal-hero{position:relative;isolation:isolate;min-height:650px;background:#f5f6f3;overflow:hidden;display:flex;align-items:center}.hero-copy{position:relative;z-index:2;padding-block:75px;width:min(1220px,90%);margin:auto;pointer-events:none}.hero-copy> *{max-width:580px}.hero-copy a{pointer-events:auto}.hero-copy h1{max-width:610px;font-size:clamp(50px,5.7vw,78px);line-height:1.06}.hero-copy .kicker{font-size:11px;letter-spacing:1.8px}.hero-subtitle{font-size:19px;font-weight:bold;margin-top:25px;margin-bottom:12px;max-width:480px}.hero-description{max-width:460px;color:var(--muted);font-size:17px}.hero-note{font-size:13px;color:var(--muted);margin-top:32px;margin-bottom:0}.hero-visual{position:absolute;inset:0 0 0 48%;background:#1e292d;clip-path:polygon(22% 0,100% 0,100% 100%,0 100%)}.hero-visual:after{content:'';position:absolute;inset:-15% -18% -15% auto;width:35%;background:var(--gold);transform:skew(-31deg);z-index:2}.hero-backdrop{position:absolute;inset:0;opacity:.28}.hero-backdrop img{height:100%;width:100%;object-fit:cover}.hero-person{position:absolute;bottom:0;right:7%;height:94%;width:auto;max-width:none}.hero-person img{height:100%;width:auto;max-width:none}.stats-band{background:var(--ink);color:white}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);padding-block:32px;gap:28px}.stat{border-right:1px solid #484c45;padding-right:20px}.stat:last-child{border:0}.stat h2{color:var(--gold);font-size:32px;letter-spacing:-.7px;margin-bottom:8px}.stat p{font-size:13px;margin:0;color:#d0d3cd}.split-section{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;align-items:center}.intro-copy>p:not(.kicker){color:var(--muted)}.image-panel{position:relative;border-left:8px solid var(--gold);background:#e5e8e3;overflow:hidden}.image-panel img{width:100%;height:470px;object-fit:cover;object-position:top}.image-caption{font-size:12px;letter-spacing:2px;background:var(--ink);color:white;padding:19px 25px;margin:0;position:relative}.image-caption:after{content:'';position:absolute;right:-1px;top:0;width:35px;height:100%;background:var(--gold);clip-path:polygon(100% 0,100% 100%,0 100%)}.soft-section{background:var(--soft)}.feature-grid,.service-grid,.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:36px}.feature-card{background:white;border-bottom:4px solid var(--gold);overflow:hidden}.feature-card figure{height:230px;overflow:hidden;background:#dde2db}.feature-card img{width:100%;height:100%;object-fit:cover;object-position:50% 25%}.feature-card h3{padding:25px 26px 0}.feature-card p{padding:0 26px 15px;font-size:15px;color:var(--muted)}.client-highlight{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 28px;margin-block:35px;padding-block:30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.client-highlight p{font-size:25px;font-weight:800;text-align:center;margin:0;padding:12px 0}.cta-band{background:var(--gold);padding:50px 0}.cta-band>.container{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-band .kicker:before{background:var(--ink)}.cta-band h2{font-size:34px;margin-bottom:0}.cta-band .button{flex-shrink:0}.site-footer{background:#181b18;color:white;padding-top:65px}.footer-grid{display:grid;grid-template-columns:1.2fr .65fr 1.15fr 1fr;gap:42px}.footer-grid>.wp-block-group{margin:0}.site-footer .brand{margin-bottom:24px}.site-footer .brand img{width:54px;height:54px}.site-footer .brand-name{font-size:27px}.site-footer .brand-name span{font-size:9px}.site-footer p,.site-footer address{font-size:14px;color:#c0c6bc;font-style:normal}.site-footer h2{font-size:16px;letter-spacing:0;margin:6px 0 23px}.footer-grid>div>a{display:block;font-size:14px;color:#c0c6bc;text-decoration:none;margin-bottom:9px;overflow-wrap:anywhere}.footer-grid>div>a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #41473d;margin-top:45px;padding-block:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#a8afa2}.footer-bottom a{text-decoration:none}.page-hero{position:relative;background:var(--ink);color:white;padding:65px 0;overflow:hidden}.page-hero:after{content:'';position:absolute;right:-8%;top:-50%;height:230%;width:32%;background:var(--gold);transform:skew(-35deg);opacity:1}.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(40px,4.6vw,64px);max-width:75%}.page-hero .kicker{color:var(--gold)}.breadcrumb{font-size:13px;color:#d2d5cf;margin:25px 0 0}.breadcrumb span{margin:0 15px;color:var(--gold)}.breadcrumb a{text-decoration:none}.about-portrait{background:linear-gradient(135deg,#242e30 0%,#242e30 65%,#f5b400 65%,#f5b400 100%);align-self:stretch;display:flex;flex-direction:column;justify-content:end}.about-portrait figure{height:520px;overflow:hidden}.about-portrait img{height:100%;width:100%;object-fit:contain;object-position:bottom}.value-card{padding:28px;background:white;border-top:3px solid var(--gold)}.value-card p{font-size:15px;color:var(--muted);margin:0}.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}.sector-grid p{margin:0;border-left:3px solid var(--gold);background:var(--soft);padding:18px 20px;font-weight:700;font-size:15px}.registration-note{margin-top:38px;padding-top:25px;border-top:1px solid var(--line)}.registration-note h3{font-size:18px}.registration-note p{font-size:14px;color:var(--muted);margin:0}.wide-intro{max-width:850px;font-size:18px;color:var(--muted)}.service-section .section{padding-block:65px}.service-card{background:white;border:1px solid var(--line);padding:30px;border-bottom:3px solid var(--gold)}.card-number{font-size:11px;color:#805b00;letter-spacing:1.8px;font-weight:bold;margin-bottom:18px}.service-card h3{font-size:23px}.service-card p:last-child{font-size:15px;color:var(--muted);margin:0}.client-card{padding:27px;background:white;border-bottom:3px solid var(--gold)}.client-number{font-size:12px;letter-spacing:2px;color:#8c6400;margin-bottom:15px}.client-card h3{font-size:20px;margin:0}.contact-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:35px;margin-top:45px;align-items:start}.contact-methods{display:grid;gap:23px}.contact-card{border:1px solid var(--line);padding:30px}.contact-card h2,.office-panel h2{font-size:29px;letter-spacing:-.8px}.contact-card p{font-size:15px;color:var(--muted)}.phone-link{display:inline-block;font-size:28px;font-weight:800;margin-right:25px;text-decoration:none;border-bottom:2px solid var(--gold)}.contact-actions{display:flex;flex-wrap:wrap;gap:12px}.contact-actions a{font-size:13px;padding:12px 18px}.email-row span{display:block;font-size:13px}.email-row a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--gold);overflow-wrap:anywhere;font-weight:bold;font-size:17px}.email-row:last-child{margin-bottom:0}.office-panel{padding:38px;background:var(--ink);color:white;border-top:6px solid var(--gold)}.office-panel>img{margin-bottom:35px}.office-panel address{font-style:normal;font-size:17px;line-height:1.8;margin-bottom:28px;color:#d4d9ce}.office-note{margin-top:35px;padding-top:28px;border-top:1px solid #4b5145}.office-note h3{font-size:19px}.office-note p{font-size:14px;color:#c0c7b8;margin:0}.standard-content{padding-block:90px;min-height:50vh}.page-content>p,.page-content>h1,.page-content>h2,.page-content>h3,.page-content>ul,.page-content>ol{width:min(900px,90%);margin-inline:auto}.page-content>p:first-child{margin-top:50px}.wp-block-image img{vertical-align:middle}a:focus-visible,button:focus-visible{outline:3px solid #b47b00;outline-offset:5px}.site-footer a:focus-visible{outline-color:var(--gold)}
@media(max-width:1100px){.nav-list{gap:18px}.nav-list a{font-size:13px}.brand-name{font-size:28px}.brand img{width:55px;height:55px}.split-section{gap:40px}.hero-copy>*{max-width:50%}.hero-copy h1{max-width:56%;font-size:62px}.hero-description{max-width:45%}.hero-subtitle{max-width:46%;font-size:17px}.footer-grid{gap:27px;grid-template-columns:1.2fr .7fr 1.3fr}.footer-grid>div:last-child{grid-column:1/-1}.contact-layout{grid-template-columns:1.2fr 1fr}.phone-link{font-size:24px}.office-panel{padding:28px}}
@media(max-width:880px){.menu-toggle{display:block;border:1px solid #b7bdb0;padding:9px 16px;background:white;font-size:14px}.site-navigation{display:none;position:absolute;top:100%;left:0;right:0;padding:18px 5%;background:white;border-bottom:1px solid var(--line)}.site-navigation.is-open{display:block}.nav-list{display:block}.nav-list a{padding:12px;font-size:15px}.nav-list li:last-child{margin-top:10px}.header-row{min-height:84px}.hero-copy h1{font-size:52px}.hero-copy .kicker{max-width:46%}.hero-visual{left:45%}.hero-person{right:-6%}.hero-copy .wp-block-buttons{max-width:46%;gap:10px}.hero-copy .wp-block-button__link{font-size:13px;padding:12px 17px}.feature-grid,.service-grid,.client-grid{gap:18px}.feature-card h3{font-size:20px;padding:22px 18px 0}.feature-card p{padding:0 18px 15px}.service-card{padding:23px}.service-card h3{font-size:21px}.contact-layout{grid-template-columns:1fr}.office-panel{display:block}.sector-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topbar a{display:none}.topbar .container{justify-content:center;font-size:10px}.header-row{min-height:78px}.brand img{width:47px;height:47px}.brand-name{font-size:25px}.brand-name span{font-size:8px}.admin-bar .site-header{top:0}.hero-copy{padding-top:43px;padding-bottom:390px}.hero-copy>*{max-width:100%}.hero-copy h1{max-width:100%;font-size:53px;letter-spacing:-2px;line-height:1.05}.hero-copy .kicker{max-width:100%;font-size:10px;letter-spacing:1.5px}.hero-subtitle,.hero-description{max-width:100%}.hero-subtitle{font-size:17px}.hero-description{font-size:16px}.hero-copy .wp-block-buttons{max-width:100%}.hero-note{margin-top:22px;font-size:12px}.hero-visual{inset:auto 0 0;height:350px;clip-path:polygon(12% 0,100% 0,100% 100%,0 100%,0 18%)}.hero-person{height:126%;right:13%;bottom:-32%}.hero-visual:after{width:28%}.section{padding-block:55px}.stats-grid{grid-template-columns:1fr 1fr;gap:25px 30px}.stat{border:0}.stat h2{font-size:28px}.stat p{font-size:12px}.split-section{grid-template-columns:1fr;gap:32px}.image-panel img{height:340px}.feature-grid,.service-grid,.client-grid{grid-template-columns:1fr}.feature-card figure{height:260px}.feature-card h3{font-size:24px;padding:25px 25px 0}.feature-card p{padding:0 25px 20px}.client-highlight{grid-template-columns:repeat(2,1fr);gap:10px}.client-highlight p{font-size:21px}.cta-band>.container{display:block}.cta-band h2{font-size:31px}.cta-band .button{margin-top:25px}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-grid>div:last-child{grid-column:auto}.site-footer{padding-top:45px}.site-footer h2{margin-bottom:15px}.footer-bottom{margin-top:35px}.page-hero{padding:45px 0}.page-hero h1{max-width:82%;font-size:44px}.page-hero:after{right:-24%;width:43%}.page-hero .kicker{font-size:10px}.about-portrait figure{height:400px}.sector-grid{grid-template-columns:1fr}.service-section .section{padding-block:50px}.service-card h3{font-size:24px}.wide-intro{font-size:17px}.contact-card{padding:25px}.contact-card h2,.office-panel h2{font-size:28px}.phone-link{font-size:27px;margin-bottom:12px}.contact-actions{flex-direction:column;align-items:start}.email-row a{font-size:16px}.contact-layout{gap:25px}.kicker{font-size:11px;letter-spacing:1.7px}.standard-content{padding-block:55px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Grid spacing is owned by the theme, not the block editor's flow margins. */
.stats-grid>*,.feature-grid>*,.split-section>*,.service-grid>*,.client-grid>*,.sector-grid>*,.client-highlight>*,.royal-hero>.hero-visual{margin-block:0!important}
