/*
Theme Name: Premier Draft
Theme URI: http://localhost/premierdraft
Author: Premier Draft Consultancy
Description: Lightweight theme for the Premier Draft Consultancy website. Pages are built with Elementor; the header is edited in Appearance > Customize and Appearance > Menus; the footer is an Elementor template.
Version: 1.0
Requires at least: 6.0
Text Domain: premierdraft
*/

:root{
  --pd-navy:#0F2F52; --pd-blue:#1C68A3; --pd-orange:#FF7A1A;
  --pd-ink:#13243A; --pd-text:#3A4E66; --pd-line:#E3E9F0; --pd-soft:#F6F8FB; --pd-pale:#E8F1F9;
}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--pd-ink);font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.elementor-heading-title{font-family:"Schibsted Grotesk","Public Sans",sans-serif;text-wrap:balance}
a{color:var(--pd-blue);text-decoration:none}
a:hover{color:var(--pd-navy)}
img{max-width:100%;height:auto}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor p{margin-top:0}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--pd-orange);outline-offset:3px}

/* ---------- Header ---------- */
.pd-wrap{max-width:1240px;margin:0 auto;padding-left:24px;padding-right:24px}
.pd-top{background:#fff;border-bottom:1px solid var(--pd-line)}
.pd-top .pd-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 32px;padding-top:14px;padding-bottom:14px}
.pd-logo img,.custom-logo-link img,.custom-logo{height:56px !important;width:auto !important;display:block}
.custom-logo-link{display:block}
.pd-contact{display:flex;flex-wrap:wrap;align-items:center;gap:12px 26px;font-size:14px;color:var(--pd-text)}
.pd-contact .pd-item{display:flex;align-items:center;gap:8px;color:var(--pd-text)}
.pd-ic{width:34px;height:34px;border-radius:50%;background:var(--pd-pale);color:var(--pd-blue);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.pd-social{display:flex;gap:8px}
.pd-social a{width:34px;height:34px;border-radius:50%;background:var(--pd-navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.pd-social a:hover{background:var(--pd-blue);color:#fff}

.pd-nav{background:var(--pd-blue);position:sticky;top:0;z-index:50}
.admin-bar .pd-nav{top:32px}
.pd-nav .pd-wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px}
.pd-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.pd-menu li{position:relative}
.pd-menu a{display:block;color:#fff;font-weight:600;font-size:15px;padding:18px 16px}
.pd-menu a:hover,.pd-menu .current-menu-item>a,.pd-menu .current_page_item>a,.pd-menu .current-menu-ancestor>a{background:var(--pd-navy);color:#fff}
.pd-menu .sub-menu{list-style:none;margin:0;padding:6px 0;position:absolute;left:0;top:100%;min-width:230px;background:#fff;border-radius:0 0 8px 8px;box-shadow:0 14px 32px rgba(15,47,82,.16);display:none;z-index:60}
.pd-menu li:hover>.sub-menu,.pd-menu li:focus-within>.sub-menu{display:block}
.pd-menu .sub-menu a{color:var(--pd-navy);padding:11px 18px;font-size:14.5px}
.pd-menu .sub-menu a:hover{background:var(--pd-pale);color:var(--pd-navy)}
.pd-btn{display:inline-flex;align-items:center;gap:8px;background:var(--pd-orange);color:var(--pd-navy);padding:11px 18px;border-radius:4px;font-weight:700;font-size:14px;min-height:44px}
.pd-btn:hover{filter:brightness(1.07);color:var(--pd-navy)}
.pd-burger{display:none;background:none;border:0;color:#fff;padding:14px 4px;cursor:pointer;font:inherit;font-weight:700;align-items:center;gap:8px}
@media (max-width: 960px){
  .pd-burger{display:inline-flex}
  .pd-menu{display:none;width:100%;flex-direction:column;padding-bottom:12px}
  .pd-nav.open .pd-menu{display:flex}
  .pd-menu .sub-menu{position:static;display:block;box-shadow:none;background:transparent;padding:0 0 0 16px}
  .pd-menu .sub-menu a{color:#DCE9F5}
  .pd-contact .pd-item:nth-child(2){display:none}
}
@media (max-width: 600px){ .pd-contact{display:none} .pd-nav .pd-btn{display:none} }

/* ---------- Default page (non-Elementor) ---------- */
.pd-page{max-width:900px;margin:0 auto;padding:72px 24px}
.pd-page h1{font-size:42px;line-height:1.1;color:var(--pd-navy);margin:0 0 24px}

/* ---------- Contact form shortcode ---------- */
.pd-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pd-form .full{grid-column:1/-1}
.pd-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--pd-navy)}
.pd-form input,.pd-form select,.pd-form textarea{width:100%;min-height:50px;border:1px solid #CFDAE6;border-radius:6px;background:#fff;padding:12px 16px;font:inherit;font-size:15px;font-weight:400;color:var(--pd-ink)}
.pd-form textarea{min-height:150px;resize:vertical}
.pd-form button{justify-self:start;border:0;background:var(--pd-orange);color:var(--pd-navy);padding:16px 32px;border-radius:4px;font:inherit;font-weight:700;font-size:15.5px;cursor:pointer}
.pd-form button:hover{filter:brightness(1.07)}
.pd-notice{grid-column:1/-1;padding:14px 18px;border-radius:6px;background:#E7F6EC;color:#1D5B33;font-weight:600}
.pd-notice.err{background:#FDECEC;color:#8A1F1F}
@media (max-width: 600px){ .pd-form{grid-template-columns:1fr} }

/* ---------- Elementor helpers ---------- */
.pd-card{transition:box-shadow .2s ease,transform .2s ease}
.pd-card:hover{box-shadow:0 14px 32px rgba(15,47,82,.14);transform:translateY(-2px)}
.pd-zoom img{transition:transform .5s ease}
.pd-zoom:hover img{transform:scale(1.04)}
.pd-zoom .elementor-widget-container{overflow:hidden;border-radius:12px}
@media (prefers-reduced-motion: reduce){*{transition:none !important}}
