/*
Theme Name: Jasper House Weddings
Theme URI: https://jasperhouseweddings.com/
Author: Steve Braglio & Cory
Author URI: https://jasperhouseweddings.com/
Description: A custom editorial WordPress theme for Jasper House Weddings, featuring responsive layouts, portfolio, experience, collections, about, journal, FAQ, and inquiry pages.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: jasper-house-weddings
Tags: photography, portfolio, wedding, custom-logo, featured-images, responsive-layout
*/

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--paper:#f6f2ec;--paper2:#ede6dc;--ink:#27231f;--muted:#756d65;--clay:#9b725c;--moss:#6e735f;--line:#d9cfc3;--white:#fff;--max:1240px;--serif:'Libre Caslon Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--shadow:0 20px 55px rgba(39,35,31,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.wrap{width:min(calc(100% - 42px),var(--max));margin:auto}.eyebrow{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--clay)}h1,h2,h3,h4{font-family:var(--serif);font-weight:400;line-height:1.05;margin:0 0 .8em}h1{font-size:clamp(3.4rem,8vw,7.6rem);letter-spacing:-.035em}h2{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.025em}h3{font-size:clamp(1.7rem,3vw,2.8rem)}p{margin:.2em 0 1.3em;color:var(--muted)}.lead{font-size:clamp(1.2rem,2vw,1.55rem);max-width:720px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:.95rem 1.35rem;border:1px solid var(--ink);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:600;transition:.25s;background:transparent}.btn:hover{background:var(--ink);color:var(--paper)}.btn.fill{background:var(--ink);color:var(--paper)}.btn.fill:hover{background:var(--clay);border-color:var(--clay)}.btn.light{border-color:var(--paper);color:var(--paper)}.actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.site-header{position:sticky;top:0;z-index:30;background:rgba(246,242,236,.92);backdrop-filter:blur(15px);border-bottom:1px solid rgba(217,207,195,.8)}.nav{height:84px;display:flex;align-items:center;justify-content:space-between}.brand{font-family:var(--serif);font-size:1.35rem;letter-spacing:.05em}.brand span{font-family:var(--sans);display:block;font-size:.55rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:-2px}.nav-links{display:flex;align-items:center;gap:1.6rem;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}.nav-links a:hover{color:var(--clay)}.menu{display:none;background:none;border:0;font-size:1.4rem}.hero{padding:3rem 0 6rem}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(2rem,6vw,7rem)}.hero-copy{padding:5rem 0}.hero-media{position:relative}.hero-media img{width:100%;min-height:620px;object-fit:cover}.hero-note{position:absolute;left:-70px;bottom:50px;background:var(--paper);padding:1.5rem 1.7rem;max-width:240px;box-shadow:var(--shadow)}.hero-note strong{font-family:var(--serif);font-size:1.35rem;font-weight:400}.section{padding:clamp(5rem,10vw,9rem) 0}.section.paper2{background:var(--paper2)}.section.dark{background:var(--ink);color:var(--paper)}.section.dark p{color:#cfc6bc}.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.2rem,7vw,7rem);align-items:center}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.four{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.image-frame{position:relative}.image-frame img{width:100%;object-fit:cover}.offset{margin-top:5rem}.quote{font-family:var(--serif);font-size:clamp(2.2rem,5vw,5rem);line-height:1.08;max-width:1050px}.pillars article{border-top:1px solid var(--line);padding-top:1.4rem}.pillars .num{color:var(--clay);font-size:.75rem;letter-spacing:.14em}.gallery{display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem}.gallery-right{display:grid;gap:1.25rem}.gallery img{width:100%;height:100%;object-fit:cover}.gallery .tall{min-height:720px}.gallery-right img{min-height:347px}.card{background:var(--white);border:1px solid var(--line);padding:2rem}.card h3{font-size:2rem}.card .price{font-family:var(--serif);font-size:2.3rem;color:var(--ink)}.list{list-style:none;padding:0;margin:1.4rem 0}.list li{padding:.65rem 0;border-bottom:1px solid var(--line);color:var(--muted)}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.journal-card img{aspect-ratio:3/2;object-fit:cover}.journal-card .meta{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--clay);margin-top:1rem}.journal-card h3{font-size:1.9rem;margin-top:.4rem}.banner{padding:6rem 0;text-align:center;background:var(--moss);color:var(--paper)}.banner p{color:#e5dfd8;margin:auto;max-width:600px}.page-hero{padding:7rem 0 5rem;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3.4rem,7vw,6.8rem);max-width:1000px}.page-hero p{max-width:680px}.timeline{display:grid;gap:0}.step{display:grid;grid-template-columns:110px 1fr;gap:2rem;border-top:1px solid var(--line);padding:2.2rem 0}.step .number{font-family:var(--serif);font-size:2rem;color:var(--clay)}.faq details{border-top:1px solid var(--line);padding:1.4rem 0}.faq summary{cursor:pointer;font-family:var(--serif);font-size:1.55rem}.faq details p{max-width:850px;padding-top:1rem}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:grid;gap:.4rem}.field.full{grid-column:1/-1}.field label{font-size:.72rem;text-transform:uppercase;letter-spacing:.11em}.field input,.field textarea,.field select{width:100%;padding:1rem;border:1px solid var(--line);background:#fff;color:var(--ink)}.field textarea{min-height:150px}.site-footer{padding:4rem 0 2rem;background:#211e1b;color:var(--paper)}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:4rem}.site-footer p,.site-footer a{color:#bfb7ae}.site-footer h4{font-family:var(--sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em}.footer-links{display:grid;gap:.6rem}.copyright{margin-top:3rem;padding-top:1.5rem;border-top:1px solid #39332e;font-size:.75rem;color:#918980;display:flex;justify-content:space-between}.notice{background:#efe5d7;border-left:3px solid var(--clay);padding:1rem 1.2rem;color:#5f544c}.center{text-align:center}.max700{max-width:700px;margin-left:auto;margin-right:auto}.spacer{height:2rem}
@media(max-width:900px){.nav-links{display:none;position:absolute;top:84px;left:0;right:0;background:var(--paper);padding:1.5rem 22px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.menu{display:block}.hero-grid,.two,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:2rem 0}.hero-media img{min-height:480px}.hero-note{left:20px}.three,.four,.journal-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}.gallery .tall{min-height:540px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){body{font-size:16px}.wrap{width:min(calc(100% - 28px),var(--max))}.nav{height:72px}.nav-links{top:72px}.three,.four,.journal-grid,.form-grid,.footer-grid{grid-template-columns:1fr}.hero{padding-top:1rem}.hero-media img{min-height:390px}.hero-note{position:relative;left:auto;bottom:auto;margin:-25px 18px 0}.offset{margin-top:0}.step{grid-template-columns:60px 1fr}.gallery .tall,.gallery-right img{min-height:330px}.copyright{display:block}.copyright span{display:block;margin-top:.5rem}}
