/*
Theme Name: AMO Steel Detailing
Theme URI: https://amodetailing.co.uk/
Author: OpenAI
Description: Customisable WordPress theme for AMO Steel Detailing Ltd, focused on structural steel detailing, Tekla, BIM, fabrication drawings and project case studies.
Version: 1.0.8
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: amo-detailing
*/

:root{--amo-blue:#1f56a6;--amo-navy:#0c315d;--amo-cyan:#178bbf;--amo-orange:#ff7421;--amo-red:#d63e2d;--amo-purple:#6b1b68;--amo-bg:#f5f7fa;--amo-text:#172433;--amo-muted:#687483;--amo-border:#dce3ea;--amo-white:#fff;--amo-shadow:0 16px 45px rgba(11,34,59,.12);--amo-radius:16px;--amo-max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--amo-text);background:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.6}img{max-width:100%;height:auto}a{color:var(--amo-blue);text-decoration:none}a:hover{color:var(--amo-orange)}.wrap{width:min(calc(100% - 40px),var(--amo-max));margin:auto}.screen-reader-text{position:absolute;left:-9999px}
.topbar{background:var(--amo-navy);color:#fff;font-size:14px}.topbar .wrap{min-height:39px;display:flex;align-items:center;justify-content:flex-end;gap:22px}.topbar a{color:#fff}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(12,49,93,.1);backdrop-filter:blur(10px)}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:flex;align-items:center;flex:0 0 auto;width:230px;max-width:34vw}.brand .custom-logo-link,.brand .brand-link{display:flex;align-items:center;width:100%;line-height:0}.brand img,.brand .custom-logo{display:block;width:100%!important;height:auto!important;max-width:230px!important;max-height:64px!important;object-fit:contain;object-position:left center}.site-nav{margin-left:auto}.site-nav ul{display:flex;gap:8px;align-items:center;list-style:none;padding:0;margin:0}.site-nav a{display:block;padding:14px 12px;font-weight:700;color:var(--amo-navy)}.site-nav .current-menu-item>a,.site-nav a:hover{color:var(--amo-orange)}.header-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--amo-orange);color:#fff!important;border-radius:9px;padding:12px 18px!important}.menu-toggle{display:none;border:0;background:none;font-size:28px;color:var(--amo-navy)}
.hero{position:relative;overflow:hidden;background:linear-gradient(112deg,var(--amo-navy) 0%,#09294c 58%,#154b79 100%);color:#fff}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,31,60,var(--amo-hero-overlay,.82)) 0%,rgba(5,31,60,.66) 44%,rgba(5,31,60,.26) 72%,rgba(5,31,60,.08) 100%);pointer-events:none}.hero.has-image{background-size:cover;background-position:center}.hero-inner{position:relative;z-index:2;min-height:650px;display:flex;align-items:center}.hero-copy{max-width:760px;padding:90px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:13px;color:#a9d8f2}.eyebrow:before{content:"";width:34px;height:3px;background:var(--amo-orange)}h1,h2,h3,h4{font-family:Arial,Helvetica,sans-serif;line-height:1.12;color:var(--amo-navy);margin-top:0}.hero h1{font-size:clamp(44px,6vw,75px);color:#fff;margin:14px 0 22px;letter-spacing:-.035em}.hero p{font-size:20px;max-width:680px;color:#eaf2f8;margin:0 0 32px}.buttons{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border-radius:9px;font-weight:800;border:2px solid transparent}.btn-primary{background:var(--amo-orange);color:#fff}.btn-primary:hover{background:#e86418;color:#fff}.btn-secondary{border-color:#fff;color:#fff}.btn-secondary:hover{background:#fff;color:var(--amo-navy)}
.trust-strip{background:#fff;border-bottom:1px solid var(--amo-border)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:22px 20px;border-right:1px solid var(--amo-border)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;color:var(--amo-navy);font-size:18px}.trust-item span{color:var(--amo-muted);font-size:14px}
.section{padding:88px 0}.section.alt{background:var(--amo-bg)}.section-heading{max-width:760px;margin-bottom:38px}.section-heading h2{font-size:clamp(34px,4vw,52px);margin:8px 0 14px;letter-spacing:-.025em}.section-heading p{font-size:18px;color:var(--amo-muted);margin:0}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.intro-card{background:var(--amo-navy);color:#fff;padding:38px;border-radius:var(--amo-radius);box-shadow:var(--amo-shadow)}.intro-card h3{color:#fff;font-size:30px}.intro-card p{color:#dbe7f2}.checklist{list-style:none;padding:0;margin:25px 0 0}.checklist li{position:relative;padding:9px 0 9px 30px}.checklist li:before{content:"✓";position:absolute;left:0;color:var(--amo-orange);font-weight:bold}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--amo-border);border-radius:var(--amo-radius);overflow:hidden;box-shadow:0 8px 28px rgba(25,48,70,.07);transition:.2s}.card:hover{transform:translateY(-3px);box-shadow:var(--amo-shadow)}.card-image{aspect-ratio:16/10;background:linear-gradient(135deg,#d9e3ec,#f1f4f7);overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover}.card-body{padding:25px}.card h3{font-size:24px;margin-bottom:10px}.card p{color:var(--amo-muted)}.read-more{font-weight:800;color:var(--amo-blue)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:steps}.process-card{counter-increment:steps;position:relative;padding:28px;border-top:4px solid var(--amo-orange);background:#fff;border-radius:0 0 var(--amo-radius) var(--amo-radius);box-shadow:0 7px 28px rgba(12,49,93,.08)}.process-icon{width:62px;height:62px;margin:0 0 18px;display:flex;align-items:center;justify-content:center}.process-icon img{display:block;width:62px;height:62px;object-fit:contain}.process-card:before{content:"0" counter(steps);display:block;color:var(--amo-blue);font-size:13px;font-weight:900;letter-spacing:.1em;margin-bottom:12px}.process-card h3{font-size:21px}.process-card p{color:var(--amo-muted);font-size:15px}.workflow-section .process-card{transition:transform .2s ease,box-shadow .2s ease}.workflow-section .process-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(12,49,93,.12)}
.project-card{position:relative;min-height:390px;border-radius:var(--amo-radius);overflow:hidden;background:var(--amo-navy);display:flex;align-items:flex-end}.project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;transition:.35s}.project-card:hover img{transform:scale(1.035)}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(4,28,52,.96))}.project-card .project-info{position:relative;z-index:2;padding:28px;color:#fff}.project-card h3{color:#fff;font-size:26px;margin:0 0 7px}.project-card p{margin:0;color:#d8e6f2}.project-meta{display:flex;gap:15px;flex-wrap:wrap;font-size:13px;color:#bed2e4;margin-bottom:8px}
.cta-band{background:linear-gradient(115deg,var(--amo-blue),var(--amo-navy));color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:55px 0}.cta-inner h2{color:#fff;font-size:38px;margin:0 0 8px}.cta-inner p{margin:0;color:#dce9f4;font-size:18px}.page-hero{padding:100px 0 80px;background:linear-gradient(115deg,var(--amo-navy),#155183);color:#fff}.page-hero h1{font-size:55px;color:#fff;margin:5px 0 12px}.page-hero p{font-size:19px;max-width:700px;color:#dce9f4}.content-wrap{padding:65px 0}.entry-content{font-size:17px}.entry-content h2{margin-top:40px;font-size:34px}.entry-content h3{margin-top:30px}.single-grid{display:grid;grid-template-columns:2fr 1fr;gap:45px}.sidebar-card{background:var(--amo-bg);border:1px solid var(--amo-border);padding:28px;border-radius:var(--amo-radius);height:max-content}.sidebar-card dt{font-weight:bold;color:var(--amo-navy)}.sidebar-card dd{margin:0 0 14px;color:var(--amo-muted)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:42px}.contact-details{background:var(--amo-navy);color:#fff;border-radius:var(--amo-radius);padding:36px}.contact-details h2{color:#fff}.contact-details a{color:#fff}.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:13px;border:1px solid #cfd8e2;border-radius:7px;font:inherit}.contact-form label{font-weight:700}.contact-form p{margin-bottom:16px}.contact-form input[type=submit],.contact-form button{width:auto;background:var(--amo-orange);color:#fff;border:0;font-weight:800;padding:13px 22px;border-radius:8px;cursor:pointer}
.site-footer{background:#081f38;color:#c8d5e2}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:50px;padding:58px 0}.site-footer h3{color:#fff;font-size:18px}.site-footer a{color:#dce7f0}.footer-logo{background:#fff;border-radius:8px;padding:10px;width:210px}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 0;font-size:13px}.footer-bottom .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.site-credit{margin-left:auto;margin-right:auto}.site-credit a{color:#fff;font-weight:700}.site-credit a:hover{color:var(--amo-orange)}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.pagination{margin-top:40px}
@media(max-width:980px){.site-nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;padding:15px 20px;border-top:1px solid var(--amo-border);box-shadow:var(--amo-shadow)}.site-nav.open{display:block}.site-nav ul{display:block}.menu-toggle{display:block}.hero-inner{min-height:560px}.intro-grid,.contact-grid,.single-grid{grid-template-columns:1fr}.cards,.archive-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:650px){.wrap{width:min(calc(100% - 28px),var(--amo-max))}.topbar .wrap{justify-content:center;flex-wrap:wrap;gap:5px 18px;padding:8px 0}.header-inner{min-height:73px}.brand{width:185px;max-width:58vw}.brand img,.brand .custom-logo{max-width:185px!important;max-height:54px!important}.site-nav{top:73px}.hero-copy{padding:70px 0}.hero-inner{min-height:530px}.hero h1{font-size:45px}.hero p{font-size:18px}.section{padding:65px 0}.cards,.archive-grid,.process-grid,.trust-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--amo-border)}.cta-inner{align-items:flex-start;flex-direction:column}.page-hero h1{font-size:42px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}


/* Contact page / Contact Form 7 */
.contact-page-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:42px;align-items:start}
.contact-info-panel{background:linear-gradient(145deg,var(--amo-navy),#123f70);color:#fff;border-radius:var(--amo-radius);padding:38px;box-shadow:var(--amo-shadow)}
.contact-info-panel h2,.contact-info-panel h3{color:#fff}.contact-info-panel h2{font-size:34px;margin-bottom:14px}.contact-info-panel>p{color:#dce8f3;margin-bottom:30px}
.contact-method{display:grid;grid-template-columns:46px 1fr;gap:14px;align-items:start;padding:20px 0;border-top:1px solid rgba(255,255,255,.14)}
.contact-method:first-of-type{border-top:0}.contact-method-icon{width:46px;height:46px;border-radius:10px;background:rgba(255,116,33,.14);display:flex;align-items:center;justify-content:center;color:var(--amo-orange);font-size:22px;font-weight:900}
.contact-method strong{display:block;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}.contact-method a,.contact-method span{color:#fff;font-size:18px}
.contact-form-panel{background:#fff;border:1px solid var(--amo-border);border-radius:var(--amo-radius);padding:38px;box-shadow:0 10px 35px rgba(12,49,93,.08)}
.contact-form-panel h2{font-size:34px;margin-bottom:8px}.contact-form-panel>.lead{margin:0 0 28px;color:var(--amo-muted)}
.amo-cf7-placeholder{padding:22px;border:1px dashed #b9c7d5;background:var(--amo-bg);border-radius:10px;color:var(--amo-muted)}
.contact-form-panel .wpcf7-form p{margin:0 0 18px}.contact-form-panel .wpcf7-form label{display:block;font-weight:800;color:var(--amo-navy)}
.contact-form-panel .wpcf7-form-control-wrap{display:block;margin-top:7px}
.contact-form-panel .wpcf7 input[type=text],.contact-form-panel .wpcf7 input[type=email],.contact-form-panel .wpcf7 input[type=tel],.contact-form-panel .wpcf7 input[type=url],.contact-form-panel .wpcf7 input[type=number],.contact-form-panel .wpcf7 select,.contact-form-panel .wpcf7 textarea{width:100%;border:1px solid #cfd8e2;background:#fff;border-radius:8px;padding:13px 14px;font:inherit;color:var(--amo-text);transition:border-color .2s,box-shadow .2s}
.contact-form-panel .wpcf7 textarea{min-height:160px;resize:vertical}.contact-form-panel .wpcf7 input:focus,.contact-form-panel .wpcf7 select:focus,.contact-form-panel .wpcf7 textarea:focus{outline:0;border-color:var(--amo-blue);box-shadow:0 0 0 3px rgba(31,86,166,.12)}
.contact-form-panel .wpcf7 input[type=submit]{appearance:none;border:0;border-radius:8px;background:var(--amo-orange);color:#fff;padding:14px 24px;font:inherit;font-weight:800;cursor:pointer;transition:.2s}.contact-form-panel .wpcf7 input[type=submit]:hover{background:#e86418}
.contact-form-panel .wpcf7-not-valid-tip{font-size:13px;margin-top:4px}.contact-form-panel .wpcf7-response-output{margin:20px 0 0!important;border-radius:8px;padding:12px 14px!important}
.contact-form-panel .wpcf7-list-item{margin-left:0;margin-right:18px}.contact-form-panel .wpcf7-spinner{vertical-align:middle}
.contact-page-content{margin-top:50px}.contact-page-content:empty{display:none}
@media(max-width:980px){.contact-page-grid{grid-template-columns:1fr}}
@media(max-width:650px){.contact-info-panel,.contact-form-panel{padding:26px}.contact-info-panel h2,.contact-form-panel h2{font-size:29px}}

/* v1.0.7 - compact image-led homepage service cards */
.services-section .section-heading{margin-bottom:30px}.service-cards{grid-template-columns:repeat(4,1fr);gap:18px}.service-card{border-radius:4px;box-shadow:0 5px 18px rgba(25,48,70,.06)}.service-card .card-image{aspect-ratio:16/9;min-height:0;background:#e8eef4}.service-card .card-image img{display:block;width:100%;height:100%;object-fit:cover}.service-card .card-body{padding:20px}.service-card h3{font-size:20px;line-height:1.2;margin:0 0 12px}.service-card p{font-size:15px;line-height:1.55;margin:0 0 15px}.service-card .read-more{font-size:13px;text-transform:uppercase;letter-spacing:.02em;color:var(--amo-orange)}
@media(max-width:1100px){.service-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.service-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.service-cards{grid-template-columns:1fr}}
