/*
Theme Name: Gilt Press Publishing
Theme URI: https://giltpresspublishing.com
Author: Gilt Press Publishing
Description: A premium, fully block-editable publishing house website inspired by the approved concept.
Version: 1.8.0
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: gilt-press
*/
:root{--gp-ink:#151515;--gp-cream:#f4f0e9;--gp-gold:#bf9254}html{scroll-behavior:smooth}body{margin:0;background:var(--gp-cream);color:var(--gp-ink)}.wp-site-blocks{overflow:hidden}a{text-underline-offset:4px}.gp-header{position:relative;z-index:5}.gp-header .wp-block-navigation-item__content{font-size:12px;letter-spacing:.035em}.gp-brand-name{font-size:29px!important;letter-spacing:.14em;line-height:1.06!important;font-weight:400}.gp-brand-subtitle{font-size:10px!important;letter-spacing:.45em;text-align:center}.gp-logo-mark img{max-width:54px}.gp-section-label{font-family:Arial,sans-serif;font-size:11px!important;letter-spacing:.22em;text-transform:uppercase;font-weight:700}.gp-gold{color:var(--gp-gold)!important}.gp-hero{min-height:590px;position:relative;background:#111;color:#fff}.gp-hero .wp-block-cover__inner-container{width:100%;max-width:1300px;margin:auto}.gp-hero h1{font-size:clamp(34px,4.2vw,60px);line-height:1.08;max-width:560px;font-weight:400}.gp-hero p:not(.gp-section-label){max-width:490px}.gp-hero .wp-block-cover__background{background:linear-gradient(90deg,rgba(5,5,5,.98) 0%,rgba(6,6,6,.85) 44%,rgba(0,0,0,.05) 100%)!important;opacity:1!important}.gp-intro,.gp-vision{padding-top:75px!important;padding-bottom:70px!important}.gp-intro h2,.gp-vision h2{font-size:clamp(37px,4vw,57px);line-height:1.08;font-weight:400}.gp-pillars{padding-bottom:70px!important}.gp-pillars .wp-block-column{text-align:center;padding:12px}.gp-pillars h3{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.17em}.gp-pillars p{font-size:15px}.gp-pillar-icon{font-size:38px!important;color:var(--gp-gold)}.gp-feature{background:#141515;color:#fff}.gp-feature .wp-block-column{min-width:0}.gp-feature .gp-feature-copy{padding:6vw max(30px,calc((100vw - 1200px)/2)) 6vw 6vw}.gp-feature h2{font-size:clamp(42px,5vw,67px);line-height:1;font-weight:400}.gp-feature .wp-block-image,.gp-feature .wp-block-image img{height:100%;width:100%;object-fit:cover}.gp-feature .wp-block-image{margin:0}.gp-feature .wp-block-columns{margin:0}.gp-categories .wp-block-cover{min-height:210px}.gp-categories .wp-block-cover h3{color:#fff;font-size:24px;font-weight:400}.gp-categories .wp-block-cover__background{background:#000!important;opacity:.56!important}.gp-categories .wp-block-columns{gap:0}.gp-categories .wp-block-column{min-width:0}.gp-newsletter{padding:38px max(24px,calc((100vw - 1200px)/2))!important;background:#111;color:#fff}.gp-newsletter h2{font-size:33px;font-weight:400}.gp-newsletter input[type=email]{background:transparent;color:#fff;border:1px solid #777;padding:14px 15px;min-width:220px;flex:1;font:inherit}.gp-newsletter button{padding:14px 25px;background:var(--gp-gold);color:#fff;border:0;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;font-size:11px}.gp-newsletter-form{display:flex;flex-wrap:wrap;gap:8px}.gp-notice{font-size:14px;color:#e4be83;margin:8px 0}.gp-footer{background:#101111;color:#eae4da}.gp-footer a{color:#dedbd4;text-decoration:none}.gp-footer .wp-block-navigation-item__content{font-size:12px}.gp-footer small{font-size:11px;color:#b7b1a6}.gp-button .wp-block-button__link{border:1px solid var(--gp-gold);background:transparent;color:inherit;border-radius:0;padding:14px 25px;font-family:Arial,sans-serif;letter-spacing:.13em;font-size:11px;text-transform:uppercase}.gp-button .wp-block-button__link:hover{background:var(--gp-gold);color:#fff}.gp-button-filled .wp-block-button__link{background:var(--gp-gold);color:#111;border-radius:0;padding:14px 25px}.gp-hero .wp-block-cover__image-background{object-position:right center!important}.gp-feature figure img{max-height:500px}.gp-contain{max-width:1200px;margin-left:auto!important;margin-right:auto!important}.gp-vision{padding-bottom:36px!important}@media(max-width:780px){.gp-header{padding:18px 22px!important}.gp-brand-name{font-size:19px!important}.gp-brand-subtitle{font-size:8px!important}.gp-hero{min-height:560px}.gp-hero .wp-block-cover__background{background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.55))!important}.gp-hero h1{font-size:38px}.gp-intro,.gp-vision{padding:50px 24px!important}.gp-pillars{padding:0 20px 48px!important}.gp-feature .gp-feature-copy{padding:45px 24px}.gp-categories .wp-block-cover{min-height:160px}.gp-newsletter{padding:45px 24px!important}.gp-footer{padding:34px 24px!important}}
/* v1.1: Layout corrections for WordPress core's constrained block layout. */
*,*::before,*::after{box-sizing:border-box}
.wp-site-blocks{width:100%;max-width:100%;overflow-x:clip}
.gp-header{width:100%;max-width:100%}
.gp-hero{width:100%;max-width:100%}
.gp-hero .wp-block-cover__inner-container{padding:48px clamp(24px,6vw,90px);box-sizing:border-box}
.gp-intro,.gp-vision,.gp-pillars{width:min(1200px,calc(100% - 64px));max-width:1200px!important;margin-inline:auto!important}
.gp-intro>.wp-block-columns,.gp-vision>.wp-block-columns{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(28px,5vw,85px);width:100%;max-width:100%!important;align-items:start}
.gp-pillars>.wp-block-columns{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:100%!important;width:100%}
.gp-intro .wp-block-column,.gp-vision .wp-block-column,.gp-pillars .wp-block-column{width:auto!important;min-width:0!important;flex-basis:auto!important;margin:0!important}
.gp-feature{width:100%!important;max-width:100%!important;overflow:hidden}
.gp-feature>.wp-block-columns{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%!important;max-width:100%!important;gap:0!important;align-items:stretch;margin:0!important}
.gp-feature>.wp-block-columns>.wp-block-column{width:100%!important;max-width:100%!important;min-width:0!important;flex-basis:auto!important;margin:0!important}
.gp-feature .wp-block-image{height:100%;min-height:440px}
.gp-feature .wp-block-image img{display:block;width:100%;height:100%;min-height:440px;max-height:none;object-fit:cover}
.gp-feature .gp-feature-copy{width:100%!important;max-width:none!important;min-width:0!important;padding:clamp(36px,5vw,84px)!important;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.gp-feature .gp-feature-copy>*{max-width:640px!important;width:auto!important;min-width:0!important;overflow-wrap:normal;word-break:normal}
.gp-feature .gp-feature-copy h2{font-size:clamp(42px,4.6vw,66px)!important;line-height:1.07!important;white-space:normal!important;letter-spacing:normal}
.gp-feature .gp-feature-copy h3{font-size:clamp(20px,2vw,29px)!important;line-height:1.3!important}
.gp-feature .gp-feature-copy p:not(.gp-section-label){font-size:17px;line-height:1.7}
.gp-categories{width:100%!important;max-width:100%!important}
.gp-categories>.wp-block-columns{width:100%!important;max-width:100%!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:0!important;margin:0!important}
.gp-categories>.wp-block-columns>.wp-block-column{min-width:0!important;flex-basis:auto!important;width:100%!important;margin:0!important}
.gp-categories .wp-block-cover{width:100%;min-width:0}
.gp-newsletter{width:100%!important;max-width:100%!important}
.gp-newsletter>.wp-block-columns{width:100%!important;max-width:1200px!important;margin:0 auto!important;display:grid!important;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.gp-newsletter .wp-block-column{min-width:0!important;width:100%!important;flex-basis:auto!important;margin:0!important}
@media(max-width:900px){
.gp-feature .gp-feature-copy{padding:36px!important}
.gp-feature .gp-feature-copy h2{font-size:clamp(38px,5vw,54px)!important}
.gp-pillars>.wp-block-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.gp-categories>.wp-block-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
.gp-intro,.gp-vision,.gp-pillars{width:calc(100% - 40px)!important}
.gp-intro>.wp-block-columns,.gp-vision>.wp-block-columns,.gp-feature>.wp-block-columns,.gp-newsletter>.wp-block-columns{grid-template-columns:minmax(0,1fr)!important}
.gp-feature .wp-block-image,.gp-feature .wp-block-image img{min-height:300px;max-height:420px}
.gp-feature .gp-feature-copy{padding:42px 24px!important}
.gp-newsletter>.wp-block-columns{gap:16px}
.gp-hero .wp-block-cover__inner-container{padding:32px 24px}
.gp-hero h1{font-size:clamp(30px,8vw,42px)}
}
@media(max-width:420px){.gp-pillars>.wp-block-columns{grid-template-columns:1fr}.gp-categories>.wp-block-columns{grid-template-columns:1fr 1fr}.gp-categories .wp-block-cover{min-height:145px}}

.gp-signup-block{width:100%;min-width:0}.gp-newsletter .wp-block-column{min-width:0}.gp-newsletter-form input[type=email]{min-width:0;box-sizing:border-box}.gp-newsletter-form button{white-space:nowrap}.gp-newsletter .gp-signup-block small{display:block;margin-top:9px;color:#bbb;font-size:12px}

/* v1.4: header simplified */
.gp-header{margin:0!important;padding-block:0!important}.gp-header .wp-block-group{margin-block-start:0!important;margin-block-end:0!important}.gp-header.alignfull{margin-bottom:0!important}.gp-header + .wp-block-cover.gp-hero,.gp-header + .gp-hero{margin-top:0!important}.gp-header{border-bottom:0!important}.gp-header .wp-block-site-logo{margin:0!important}.gp-header .wp-block-site-title{margin:0!important;line-height:1}.gp-header .wp-block-group.is-layout-flex{align-items:center;gap:12px}.gp-hero{margin-top:0!important}

/* 1.5 layout and contact page */
.gp-header {margin:0!important;min-height:0!important}
.gp-header .wp-block-group {margin:0!important}
.gp-header .wp-block-site-title {margin:0!important}
.gp-header .gp-brand-subtitle {margin:2px 0 0!important;line-height:1.2}
.gp-feature .wp-block-columns {margin-top:0!important;margin-bottom:0!important}
.gp-feature .wp-block-image {overflow:hidden;background:#eae8e4}
.gp-feature .wp-block-image img {object-fit:contain!important;background:#eceae7;max-height:560px!important;min-height:0!important}
.gp-feature .gp-feature-copy {align-items:flex-start!important}
.gp-feature .gp-feature-copy>* {max-width:600px!important}
.gp-contact {padding:72px 5% 90px;max-width:1240px;margin:auto}
.gp-contact-kicker{color:var(--gp-gold);letter-spacing:.19em;text-transform:uppercase;font:700 11px Arial,sans-serif}
.gp-contact h1 {font-size:clamp(44px,5vw,72px);line-height:1.08;margin:12px 0 18px}
.gp-contact .gp-contact-intro {max-width:780px;font-size:18px;line-height:1.75}
.gp-contact-grid {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(35px,7vw,100px);margin-top:58px;align-items:start}
.gp-contact h2 {font-size:30px;font-weight:400;margin:0 0 20px}
.gp-contact a {color:#805e34;text-underline-offset:4px}
.gp-contact-form {display:grid;gap:18px}
.gp-contact-form label {display:grid;gap:8px;font:600 12px Arial,sans-serif;letter-spacing:.055em;text-transform:uppercase}
.gp-contact-form input,.gp-contact-form textarea {border:1px solid #b7afa3;background:#fff;color:#151515;padding:15px;font:16px Arial,sans-serif;width:100%;border-radius:0;box-sizing:border-box}
.gp-contact-form textarea {min-height:175px;resize:vertical}
.gp-contact-form button {justify-self:start;border:1px solid #b58c56;background:#141515;color:#fff;padding:16px 28px;cursor:pointer;font:600 12px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.gp-contact-form button:hover{background:#966c3e}
.gp-contact-notice{padding:14px 16px;border:1px solid #b58c56;font:15px Arial,sans-serif}
.gp-brand-lockup{display:flex;align-items:center;gap:9px;line-height:1}
.gp-brand-lockup .gp-brand-name{font-size:27px!important;margin:0!important;letter-spacing:.13em}
.gp-brand-lockup .gp-brand-subtitle{font-size:9px!important;letter-spacing:.39em;margin:8px 0 0!important}
.gp-brand-lockup img{display:block;width:36px;height:50px}
.gp-book-cover-img {object-fit:contain!important}
@media(max-width:700px){.gp-contact {padding:46px 24px 60px}.gp-contact-grid{grid-template-columns:1fr;margin-top:34px}.gp-feature .wp-block-image img{max-height:460px!important}}

/* 1.6: Contact-page fix and header CTA */
.wp-site-blocks{min-height:100vh;display:flex;flex-direction:column}
.wp-site-blocks > .wp-block-template-part:last-child{margin-top:auto}
.gp-contact{width:100%;box-sizing:border-box;min-height:calc(100vh - 320px);margin-block-start:0!important;margin-block-end:0!important}
.gp-contact .gp-contact-grid{width:100%;max-width:100%!important}
.gp-contact .gp-contact-grid>.wp-block-column{min-width:0;width:100%!important}
.gp-header{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px;width:100%}
.gp-header-actions{margin-left:auto!important;flex-shrink:0}
.gp-header-contact .wp-block-button__link{background:#151515!important;color:#fff!important;border:1px solid #151515!important;border-radius:0!important;padding:13px 24px!important;font:700 11px Arial,sans-serif!important;letter-spacing:.13em!important;text-decoration:none!important}
.gp-header-contact .wp-block-button__link:hover{background:#a7814e!important;border-color:#a7814e!important}
@media(max-width:700px){.gp-header-contact .wp-block-button__link{padding:11px 14px!important;font-size:10px!important}.gp-contact{min-height:calc(100vh - 240px)}.gp-contact .gp-contact-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important}.gp-brand-lockup .gp-brand-name{font-size:17px!important}.gp-brand-lockup .gp-brand-subtitle{font-size:7px!important}}

/* v1.7: modestly increase top and bottom logo/header breathing room. */
.gp-header{padding-top:17px!important;padding-bottom:17px!important}
@media(max-width:700px){.gp-header{padding-top:13px!important;padding-bottom:13px!important}}

/* v1.8: reliable header spacing, visible even if WP has saved the header template part. */
.wp-site-blocks .gp-header.wp-block-group{padding-top:23px!important;padding-bottom:23px!important;min-height:94px!important}
@media(max-width:700px){.wp-site-blocks .gp-header.wp-block-group{padding-top:16px!important;padding-bottom:16px!important;min-height:77px!important}}
