:root{--navy:#182936;--gold:#e7bf79;--ink:#182936;--paper:#f9f7f1;--focus:#1a65ad}
body{background:var(--paper);color:var(--ink)}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.045em}
h1{font-size:clamp(2.85rem,4.4vw,4.5rem);line-height:1.11}
h2{font-size:clamp(2.25rem,3.7vw,3.8rem);line-height:1.12}
h1 em,h2 em{font-weight:400;color:#94703d}
.kicker{color:#5c6664;margin-bottom:1.25rem;font-size:.7rem}
.small-dot{display:inline-block;width:7px;height:7px;background:#a4824d;border-radius:50%;margin-right:.4rem}
.agency-header{border-bottom:1px solid #deded6}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding-block:1.25rem}
.agency-brand{display:inline-flex;flex:none;align-items:center;max-width:150px}
.agency-brand img{width:122px;height:auto}
.agency-header .site-nav{gap:1.5rem}
.agency-header .site-nav a{font-size:.82rem}
.navy{background:var(--navy);color:#fff;border-radius:4px}
.gold{background:var(--gold);color:#132531;border-radius:4px}
.line-btn{border:1px solid #919c9b;background:transparent;color:var(--navy);border-radius:4px}
.agency-header .nav-cta{font-size:.78rem;min-height:44px;padding:.7rem 1rem}
.agency-hero{padding:4.7rem 0 4.5rem}
.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:3.8rem;align-items:center}
.hero-description{font-size:1.01rem;color:#5b666b;max-width:33rem;margin-top:1.65rem}
.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.9rem}
.hero-actions .btn{font-size:.78rem;padding:.85rem 1.1rem}
.hero-note{font-size:.73rem;color:#606c6e;margin-top:1.3rem}
.hero-showcase{min-width:0}
.hero-large-preview{display:block;text-decoration:none;background:#fff;box-shadow:0 18px 55px #122f3c18;border:1px solid #d7dcd7;border-radius:8px;overflow:hidden}
.window-bar{display:flex;gap:.7rem;align-items:center;justify-content:space-between;padding:.6rem .8rem;color:#657472;background:#fff;font-size:.59rem}
.window-bar>span:first-child{color:#babeb7;font-size:.5rem;white-space:nowrap}
.hero-large-preview img{width:100%;aspect-ratio:1200/780;object-fit:cover;object-position:top}
.hero-preview-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.1rem}
.hero-preview-row a{display:block;text-decoration:none;border:1px solid #d9ddd5;background:white;border-radius:4px;overflow:hidden}
.hero-preview-row img{width:100%;aspect-ratio:1200/800;object-fit:cover;object-position:top}
.hero-preview-row span{display:flex;justify-content:space-between;padding:.6rem .7rem;font-size:.65rem;letter-spacing:.05em}
.hero-showcase>.caption{margin-top:1rem;color:#5e6a67;text-align:right;font-size:.7rem}
.sector-strip{border-top:1px solid #dfded4;border-bottom:1px solid #dfded4;padding:1.5rem 0}
.sector-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.sector-strip p{font-size:.72rem;line-height:1.5;color:#6b7270}
.sector-strip p strong{color:#263a43}
.sector-strip span{font-size:.78rem;color:#5c6b6d}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:2.8rem}
.section-heading>p{max-width:27rem;font-size:.94rem;color:#5a686b}
.portfolio-section{background:#182936;color:#f9f3e5}
.portfolio-section .kicker{color:#c7c4ad}.portfolio-section h2 em{color:#e1bc80}
.portfolio-section .section-heading>p{color:#c0c9c7}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.7rem}
.project-link{display:block;text-decoration:none}
.project-image{position:relative;border-radius:4px;overflow:hidden;border:1px solid #51616a;background:#f6f1e8}
.project-image img{width:100%;aspect-ratio:1.2;object-fit:cover;object-position:top;transition:transform .25s ease}
.project-image>span{position:absolute;bottom:0;left:0;right:0;background:#152a38ee;color:#fff;padding:.75rem 1rem;font-size:.8rem;display:flex;justify-content:space-between}
.project-link:hover .project-image img{transform:scale(1.025)}
.project-meta{display:flex;justify-content:space-between;gap:.7rem;margin-top:1.3rem;font-size:.59rem;letter-spacing:.09em;color:#b9c8c6}
.project-link h3{font-size:1.9rem;margin-top:.7rem}
.project-link p{font-size:.86rem;color:#c2ccc8;margin-top:.75rem}
.project-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}
.project-tags span{font-size:.66rem;padding:.35rem .65rem;border:1px solid #53656b;border-radius:2px;color:#c7d3cf}
.portfolio-note{font-size:.72rem;color:#b4c5c7;border-top:1px solid #52606a;padding-top:1.4rem;margin-top:2.6rem;max-width:100%}
.value-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:6rem}
.value-intro{font-size:.95rem;color:#5f6d6f;max-width:25rem;margin-top:1.5rem}
.value-list article{display:grid;grid-template-columns:2rem 1fr;gap:1.4rem;border-top:1px solid #cccfc5;padding:1.8rem 0}
.value-list article:last-child{border-bottom:1px solid #cccfc5}
.value-list article>span{font-size:.75rem;color:#7b6039;padding-top:.3rem}
.value-list h3{font-size:1.5rem;letter-spacing:-.025em}
.value-list p{font-size:.9rem;color:#637071;margin-top:.75rem}
.offers-section{background:#eeeee5}
.offers-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:stretch}
.offer{padding:2rem;background:#fbfaf6;border:1px solid #cccfc5;display:flex;flex-direction:column;min-width:0}
.offer h3{font-size:1.8rem;letter-spacing:-.03em}
.offer .kicker{font-size:.59rem;color:#5d6b6e;margin-bottom:.9rem;min-height:1.8rem}
.price{font-size:3.4rem;line-height:1.15;letter-spacing:-.055em;font-weight:700;padding:1.5rem 0 1rem}
.price span{font-size:1.8rem;letter-spacing:0}
.price small{display:block;font-size:.65rem;font-weight:400;letter-spacing:.05em;margin-bottom:.2rem}
.offer>p:not(.kicker){font-size:.87rem;color:#5e6c6d;min-height:4.4rem}
.offer ul{display:grid;grid-template-columns:minmax(0,1fr);gap:.8rem;font-size:.82rem;padding:1.5rem 0 2rem;border-top:1px solid #d3d6ce;margin-top:.8rem;flex:1}
.offer li{min-width:0;overflow-wrap:anywhere;padding-left:1.05rem;position:relative}
.offer li:before{content:'—';position:absolute;left:0;color:#86714a}
.offer .btn{font-size:.76rem;padding:.85rem .7rem;width:100%}
.offer-featured{background:#233846;border-color:#233846;color:#fff8ed}
.offer-featured .kicker{color:#e4c798}
.offer-featured>p:not(.kicker){color:#c4d0cf}
.offer-featured ul{border-color:#65747c;color:#f0f1e9}
.offer-featured li:before{color:#e8c08a}
.pricing-note{font-size:.73rem;color:#5a6868;margin-top:1.3rem;max-width:108ch}
.visibility-block{margin-top:3.5rem;border-block:1px solid #aeb9b2;display:grid;grid-template-columns:1.5fr .7fr;gap:4rem;padding:2.5rem 0}
.visibility-block h3{font-size:clamp(1.9rem,2.8vw,2.7rem);line-height:1.15}
.visibility-block h3 em{font-weight:400;color:#627462}
.visibility-block p:not(.kicker){font-size:.9rem;color:#596b66;margin-top:1rem;max-width:43rem}
.text-link{display:inline-flex;min-height:44px;gap:2rem;align-items:center;margin-top:1.25rem;font-size:.84rem;font-weight:700}
.visibility-block aside{padding-left:2rem;border-left:1px solid #b5bfb4}
.visibility-block aside>p:first-child{font-size:.65rem;letter-spacing:.12em}
.visibility-block aside>strong{font-size:2.9rem;font-weight:700;letter-spacing:-.05em;display:block;margin-top:.7rem;line-height:1.2}
.visibility-block aside>strong span{display:block;font-size:.95rem;font-weight:400;letter-spacing:0;margin-top:.3rem}
.visibility-block aside>p:last-child{font-size:.74rem}
.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}
.method-grid article{border-top:1px solid #c7ccc4;padding-top:1.4rem}
.method-grid article>span{color:#7b6039;font-size:.77rem}
.method-grid h3{font-size:1.9rem;margin-top:1.5rem}
.method-grid p{font-size:.9rem;color:#5f6c6c;margin-top:1rem}
.agency-faq{background:#f0f1eb}
.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:5rem}
.faqs{border-top:1px solid #aab6b0}
.faqs details{border-bottom:1px solid #aab6b0}
.faqs summary{padding:1.1rem 2rem 1.1rem 0;font-size:.94rem;cursor:pointer;list-style:none;position:relative;min-height:56px}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary::after{position:absolute;right:.2rem;content:'+';font-size:1.3rem;top:.9rem}
.faqs details[open] summary::after{content:'−'}
.faqs p{color:#5b6c66;font-size:.88rem;padding:0 1.5rem 1.2rem 0}
.contact-section{background:#192c39;color:#faf6e9}
.contact-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:5rem;align-items:start}
.contact-section .kicker{color:#c5cabb}.contact-section h2 em{color:#e4c18e}
.contact-intro{font-size:1rem;color:#c0cdca;margin-top:1.4rem;max-width:29rem}
.direct-email{display:inline-flex;flex-wrap:wrap;gap:1rem;align-items:center;font-size:clamp(.95rem,1.4vw,1.2rem);color:#eed1a3;text-decoration:none;padding-block:1rem;margin-top:.8rem}
.contact-note{color:#c1ceca;margin-top:1.2rem}
#agency-contact{background:#f6f3e9;color:#233d48;padding:2rem;border-radius:5px;min-width:0}
.form-legend{font-family:Georgia,serif;font-size:1.55rem;font-weight:400;letter-spacing:-.025em;margin-bottom:1.4rem}
#agency-contact input,#agency-contact select,#agency-contact textarea{border-color:#a4afa7;background:#fffefa}
#agency-contact label>span{font-size:.78rem;font-weight:700}
#agency-contact .caption{font-size:.73rem;color:#576e69}
#agency-contact .btn{width:100%}
#contact-status{background:#e9efe6;color:#345136}
#contact-status.error{background:#fff0e9;color:#813b29}
.email-actions{margin-top:1rem}
.email-actions details{margin-top:1rem;font-size:.82rem}
.email-actions summary{min-height:44px;cursor:pointer}
.email-actions p{margin-bottom:.7rem}
.agency-footer{padding:3rem 0 1.4rem;background:#f8f6ee}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;padding-bottom:2rem}
.footer-top p{font-family:Georgia,serif;font-size:1.2rem;color:#5e7067}
.footer-email{font-size:.87rem}
.footer-bottom{border-top:1px solid #d6dbd1;padding-top:1.4rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.72rem;color:#596e6b}
.footer-bottom div{display:flex;gap:1.5rem;flex-wrap:wrap}
@media(max-width:1100px){
.hero-grid{gap:2rem}.hero-actions{gap:.6rem}.hero-actions .btn{font-size:.74rem}
.value-grid{gap:3rem}.offer{padding:1.5rem}.contact-grid{gap:3rem}
.agency-header .site-nav{gap:1rem}
}
@media(max-width:900px){
.agency-header .nav-cta{margin-left:auto}.agency-header .site-nav{gap:.3rem}
.hero-grid{grid-template-columns:1fr;gap:2.6rem}.hero-showcase{max-width:700px;width:100%;margin:auto}
.agency-hero{padding:3.4rem 0}.hero-text h1{font-size:clamp(2.9rem,7vw,4.2rem)}
.hero-text{max-width:650px}.hero-description{max-width:39rem}
.hero-actions .btn{font-size:.84rem}
.section-heading{align-items:start;gap:1.5rem}.section-heading>p{max-width:21rem}
.portfolio-grid{gap:1rem}.project-link h3{font-size:1.5rem}.project-meta{flex-direction:column;gap:.15rem}
.offers-grid{grid-template-columns:1fr}.offer{padding:2rem}.offer>p:not(.kicker){min-height:0}.offer .kicker{min-height:0}.offer ul{flex:initial}
.value-grid,.contact-grid{grid-template-columns:1fr;gap:2.8rem}.value-intro{max-width:40rem}
.faq-grid{gap:2.5rem}.contact-grid h2{max-width:800px}
}
@media(max-width:700px){
.section-heading,.visibility-block{display:block}.section-heading>p{margin-top:1.3rem;max-width:34rem}
.portfolio-grid,.method-grid,.faq-grid{grid-template-columns:1fr}
.portfolio-grid{gap:2.5rem}.project-image img{aspect-ratio:1.45}
.project-meta{flex-direction:row}.project-link h3{font-size:1.95rem}
.project-tags span{font-size:.73rem}
.visibility-block aside{border-left:0;border-top:1px solid #b4c0b7;margin-top:2rem;padding:1.3rem 0 0}
.visibility-block aside>strong span{display:inline;margin-left:.4rem}
.method-grid{gap:2rem}.method-grid h3{margin-top:.8rem}
}
@media(max-width:550px){
.agency-brand img{width:107px}.agency-header .nav-cta{display:none}
.nav-shell{padding-block:1rem}.hero-text h1{font-size:clamp(2.7rem,10vw,3.6rem)}
.hero-text .kicker{font-size:.62rem}
.hero-actions{flex-direction:column;align-items:stretch}.hero-note{font-size:.72rem}
.hero-preview-row{gap:.6rem}.window-bar{font-size:.54rem}
.hero-preview-row span{font-size:.62rem;padding:.55rem}
.hero-showcase>.caption{text-align:left}
.sector-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.sector-strip p{grid-column:1/-1;font-size:.8rem}
.offer{padding:1.45rem}
#agency-contact{padding:20px}
.contact-grid{gap:2rem}
.footer-email{font-size:.82rem}.footer-top{align-items:flex-start;flex-direction:column;gap:1.2rem}
.footer-bottom div{gap:1rem}
}

.footer-bottom a,.footer-email{display:inline-flex;align-items:center;min-height:44px}
