/* Dunyevy Digital | unified typography + refined visual system | 2026 */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;500;600;700;800;900&display=swap');
:root{
 --bg:#07151d;--panel:#0d222d;--cyan:#18d6e9;--orange:#ff7832;
 --muted:#aec4cc;--line:#284653;
 --font-ui:'Barlow Condensed','Arial Narrow','Liberation Sans Narrow',Arial,sans-serif;
 --border-subtle:rgba(139,192,205,.19);
 --surface:#0b202b;--surface-2:#102935;
 --text:#f7fbfc;
}
html{scroll-padding-top:112px}
body{color:var(--text);font:500 19px/1.5 var(--font-ui);letter-spacing:.012em;background:
 radial-gradient(ellipse 920px 700px at 8% -130px,rgba(19,109,125,.16),transparent 65%),var(--bg);overflow-x:clip}
body,body :is(h1,h2,h3,h4,h5,h6,p,span,small,strong,em,b,a,button,label,input,select,textarea,summary,legend,figcaption,li,div){font-family:var(--font-ui)!important}
img{max-width:100%}h1,h2,h3,h4,h5,h6{letter-spacing:.012em}h1,h2{font-weight:900!important}h3{font-weight:800}p{line-height:1.55}
:focus-visible{outline:3px solid var(--cyan)!important;outline-offset:3px!important}
button,select,input,textarea{font-family:var(--font-ui)!important;font-size:18px}
.shell{max-width:1380px;padding-left:28px;padding-right:28px}
a,button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
/* Brand & global navigation */
.site-header{z-index:70;background:rgba(7,19,27,.96);border-bottom:1px solid rgba(107,176,191,.16);backdrop-filter:blur(16px)}
.nav{min-height:86px;gap:20px}
.logo{font-size:33px;font-weight:900;letter-spacing:.005em;gap:12px;white-space:nowrap}
.logo img{width:60px;height:60px;filter:drop-shadow(0 7px 14px #0007)}
.logo small{font-size:10px;letter-spacing:.12em;font-weight:700;margin-top:5px;opacity:.91}
.navigation{gap:3px;margin:auto}
.navigation a{font-size:17px!important;font-weight:800;letter-spacing:.035em;padding:10px 11px!important;border-radius:9px;border:1px solid transparent;color:#d8e5eb}
.navigation a:hover,.navigation a:focus-visible{background:#122e3a;color:var(--cyan);border-color:rgba(31,205,222,.3);transform:none}
.navigation a.active{background:rgba(22,162,180,.12);border-color:rgba(28,210,232,.4);color:#6aecf7;box-shadow:none}
.header-mail{background:linear-gradient(110deg,#ff9a27,#fc6324);font-size:16px!important;letter-spacing:.02em;border-radius:11px;padding:10px 16px;box-shadow:0 5px 24px #ff6d251e}
.menu-toggle{font-family:var(--font-ui);border:1px solid #477884;border-radius:10px}
/* Shared hierarchy and sections */
.kicker{font-size:13px;letter-spacing:.14em;font-weight:800;color:#62e1ed}
.page-hero{padding-top:68px;padding-bottom:51px;background:radial-gradient(ellipse 65% 105% at 50% 0%,#12313d 0%,transparent 85%)}
.page-hero h1{font-size:clamp(52px,6.3vw,87px);max-width:970px;line-height:.94;margin:17px auto}
.page-hero p{font-size:21px;max-width:750px;color:#c6d9df}
.section{padding-top:55px;padding-bottom:21px}
.expanded-section{padding-top:75px;padding-bottom:15px}
.section-head{gap:20px;margin-bottom:16px}
.section h2,.section-head h2,.expanded-section h2{font-size:clamp(37px,4vw,56px);line-height:1.03;margin:11px 0 5px;letter-spacing:.005em}
.section-intro{font-size:19px;line-height:1.5;max-width:850px;color:var(--muted);margin-bottom:26px}
.btn{font-weight:900;font-size:17px;letter-spacing:.035em;line-height:1.1;padding:13px 23px;border-radius:11px;min-height:48px;gap:20px;background:linear-gradient(115deg,#ff9732,#fa6126);box-shadow:0 4px 17px #ff6c2115}
.btn:hover{filter:none;background:linear-gradient(115deg,#ffb04f,#ff732e);box-shadow:0 8px 24px #ff762330;transform:translateY(-2px)}
.btn-secondary{background:transparent;border:1px solid #2a7d8e;color:#75eaf1;box-shadow:none}
.btn-secondary:hover{background:#103743;border-color:#42d6e8;box-shadow:none}
.button-row{gap:11px;margin-top:22px}
.micro,.fine,.tiny-note{font-size:14px!important;line-height:1.4;color:#96afbb}
/* Homepage: primary offer first, advertising second */
.home-hero{grid-template-columns:minmax(0,3.15fr) minmax(280px,.94fr);gap:14px;padding-top:24px}
.hero-main{min-height:590px;grid-template-columns:51% 49%;border:1px solid var(--border-subtle);background:#0a1c26;border-radius:20px;box-shadow:0 18px 46px #0002}
.hero-copy{padding:43px 16px 40px 36px;display:flex;flex-direction:column;justify-content:center}
.hero-copy h1{font-size:clamp(52px,5.25vw,75px);line-height:.98;margin:16px 0 17px;letter-spacing:.002em}
.hero-copy h1 em{background:#ff8329;color:#091720;padding:0 7px;transform:rotate(-2deg);border-radius:3px}
.hero-copy>p{font-size:18px;line-height:1.48;color:#cbdde4;margin:0;max-width:480px}
.checklist{margin:20px 0}.checklist li{font-size:18px;line-height:1.26;margin:10px 0;display:flex;align-items:flex-start;gap:10px}
.checklist li:before{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0;border-radius:50%;margin:1px 0 0;font-size:13px}
.hero-copy .btn{align-self:flex-start}.hero-copy .micro{margin-top:13px}
.hero-photo{min-height:100%;background:#071821}.hero-photo img{object-fit:contain!important;object-position:center!important;display:block}
.hero-photo:before{display:none!important}
.photo-overlay{bottom:20px;right:16px;border-radius:10px;background:#061721e5;border:1px solid #3a7783;box-shadow:0 8px 24px #0005}
.photo-overlay b{font-size:20px}.photo-overlay span{font-size:14px}
.stat-panel{border:1px solid var(--border-subtle);border-radius:20px;background:linear-gradient(150deg,#0c2530,#081b25);padding:24px 17px 22px;box-shadow:0 18px 46px #0002}
.stat-panel>strong{font-size:clamp(68px,6.5vw,92px);line-height:.9;letter-spacing:0;color:#2cd9ea}
.stat-panel h2{font-size:38px;line-height:1;color:#f0fafc;margin:5px 0 8px}
.stat-panel>p{font-size:16px;color:#aec7d0;margin:4px 0 15px}
.stat-divider{border-color:#2b515e;margin:22px 0}
.category-grid{gap:22px 6px}
.category-grid small,.category-icon small{font-size:13px!important;font-weight:700;line-height:1.17;color:#daeaf0}
.category-icon svg{width:27px;height:27px;stroke-width:1.7}
.stat-panel .tagline{margin-top:23px;color:#7bdfeb;font-size:12px;letter-spacing:.045em}
/* Secondary marketing block */
.advertise-band{margin-top:15px;grid-template-columns:25% 20% 34% 21%;min-height:260px;border:1px solid var(--border-subtle);border-radius:19px;background:#0b222d}
.advertise-band>div{padding:25px}
.advertise-band h2{font-size:clamp(37px,3.5vw,50px);line-height:1.02;margin:10px 0}
.advertise-band p{font-size:17px;color:#bcdae0;line-height:1.37}
.advertise-band .adv-points{padding-top:44px}
.adv-points p{font-size:16px;margin:14px 0;color:#a8dee7}
.attention{background:linear-gradient(130deg,#123843,#0a212b)}
.attention strong{font-size:clamp(34px,2.8vw,47px);letter-spacing:.005em;transform:none}
.attention p{margin-top:14px}
.advertise-band>img{object-fit:cover}
/* Content cards: clean, light borders, intentional spacing */
.info-grid{gap:16px}
.info-card,.steps-grid article,.overview-card{border:1px solid var(--border-subtle);border-radius:16px;background:linear-gradient(158deg,#102a36,#0b202a 90%);box-shadow:0 8px 30px #00000015}
.info-card{padding:25px 25px 27px}.info-icon{font-size:28px;color:#fda163}
.info-card h3,.steps-grid h3{font-size:24px;line-height:1.18;margin:10px 0 8px;color:#f6fcfe}
.info-card p,.steps-grid p,.overview-card p{font-size:18px;line-height:1.4;color:#b9d0d8;margin:0}
.detail-banner{margin-top:19px;padding:26px 30px;border:1px solid rgba(57,175,191,.32);border-radius:16px;background:linear-gradient(110deg,#103440,#0b2530);gap:22px}
.detail-banner h3{font-size:29px}.detail-banner p{font-size:18px;line-height:1.43;color:#c1d8e0;margin-bottom:7px}
.detail-banner small{font-size:14px;color:#9ebbc4}
.steps-grid{gap:16px}.steps-grid article{padding:25px 26px}.steps-grid article>span{font-size:40px;color:#31d6e6}
.overview-grid{gap:16px}.overview-card img{height:320px;object-fit:contain;background:#071921}.overview-card>div{padding:25px}
.overview-card h3{font-size:26px}.overview-card a{font-size:18px;letter-spacing:.03em;text-decoration:underline;text-decoration-color:#249aab;text-underline-offset:5px}
/* Galleries and photo cards: preserve full photographs, avoid stretching */
.home-showcase{gap:16px}.home-showcase .photo-tile{border:1px solid var(--border-subtle);border-radius:16px;aspect-ratio:16/9;background:#091923}
.home-showcase .photo-tile img{object-fit:contain!important}
.home-showcase .photo-tile span{font-size:15px}
.photo-grid:not(.home-showcase){gap:14px}
.feature-strip{gap:8px;margin:16px 0 32px}.feature{background:#0c2631;border:1px solid rgba(115,176,188,.13);padding:14px 11px;border-radius:11px;gap:10px}
.feature>span{font-size:26px;color:#fb9b5f}.feature strong{font-size:17px;line-height:1.14}.feature small{font-size:13px;line-height:1.15;color:#a9bdc6}
.gallery,.ad-gallery{gap:20px}.gallery-card,.ad-card{background:#0b202b;border:1px solid var(--border-subtle);border-radius:16px}
.gallery-card img,.ad-card img{object-fit:contain;background:#081b24}
.gallery-card figcaption,.ad-card figcaption{font-size:18px;padding:15px 20px;color:#ecf6f8}
.ad-card:hover{transform:translateY(-3px);border-color:#35a5b6}
/* FAQs, prices and applications */
.faq-list{gap:10px}.faq-list details{background:#0d2530;border:1px solid var(--border-subtle);padding:19px 22px;border-radius:12px}
.faq-list summary{font-size:21px;line-height:1.2;color:#ebf9fb;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:24px;color:var(--cyan);font-weight:700}
.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:18px;line-height:1.45;color:#b7cfd6;margin-top:12px}
.home-rate-grid article{background:linear-gradient(150deg,#102d39,#0b222d);border:1px solid var(--border-subtle);border-radius:15px;padding:22px 24px}
.home-rate-grid article span{font-size:13px;letter-spacing:.1em}
.home-rate-grid h3{font-size:26px}.home-rate-grid p{font-size:20px}.home-rate-grid strong{color:#62e5ef}
.ad-application-promo{border:1px solid rgba(67,172,188,.38);border-radius:19px;background:linear-gradient(120deg,#123641,#0a2430)}
.ad-application-promo h2{font-size:clamp(39px,4vw,58px);line-height:1.01}.ad-application-promo p{font-size:19px;line-height:1.48;color:#b9d3db}
.promo-mini{border:1px solid #2b6170;border-radius:16px;background:#0b2230}.promo-mini strong{font-size:42px;line-height:1.02}.promo-mini span,.promo-mini small{letter-spacing:.08em}
/* Forms: consistent labels, controls and calculated totals */
.campaign-heading h2,.apply-hero h1,.success-main h1{line-height:.98}
.campaign-heading p{font-size:19px;line-height:1.43}
.campaign-form,.apply-form,.campaign-summary,.apply-aside-card{border:1px solid var(--border-subtle);box-shadow:0 15px 40px #00000024;background:linear-gradient(158deg,#102b37,#0a202a)}
.campaign-stage .stage-top p,.apply-section-head p{font-size:19px;color:#b9d1d9}
.campaign-step{font-size:20px;border:1px solid #325560;border-radius:10px}.campaign-step.is-active{background:#123d49}
.duration-option,.area-option,.apply-area,.method-option,.artwork-choice label{border:1px solid #345c67;border-radius:12px;background:#0b2530}
.duration-option:hover,.area-option:hover,.apply-area:hover{border-color:#50b9c8}
.area-option strong,.apply-area strong{font-size:25px}.area-option small,.apply-area small{font-size:16px;line-height:1.3}
.area-option .area-price,.apply-area b{font-size:31px}
.campaign-field{font-size:18px}
.campaign-field input,.campaign-field textarea,.campaign-field select,form input,form select,form textarea{font-family:var(--font-ui)!important;font-size:19px;line-height:1.25;background:#071b25;border:1px solid #456978;border-radius:10px;color:#f5fafb;min-height:46px}
.campaign-field textarea,form textarea{min-height:96px}
.campaign-field input::placeholder,.campaign-field textarea::placeholder,form input::placeholder,form textarea::placeholder{color:#96acb6;opacity:.9}
.apply-hero p{font-size:21px;line-height:1.4}.apply-feature-list span{font-size:16px;background:#113743}
.apply-section-head h2{font-size:clamp(34px,3.3vw,48px);line-height:1.05}
.apply-dropzone{min-height:190px;background:#0c2a34;border-color:#41808d}.apply-dropzone strong{font-size:29px}
.apply-submit-row{background:#0e3340}.apply-aside-card{border-color:rgba(58,193,208,.4)}
.apply-aside-card h3{font-size:36px}.apply-assistance{border-color:var(--border-subtle)}
.pricing-caution,.review-reminder{font-size:16px;line-height:1.42}
/* Contacts and footer */
.home-contact{padding-top:36px;padding-bottom:36px;border:1px solid rgba(59,174,190,.33);border-radius:17px;background:linear-gradient(120deg,#133743,#0a222e)}
.home-contact>p{font-size:19px;color:#bfd7df}.contact-options{gap:13px;margin-top:18px}
.contact-options>a{border:1px solid var(--border-subtle);border-radius:11px;padding:20px;background:#0a222c}
.contact-options>a:hover{border-color:#5cd9e9;background:#103440}
.contact-options small{font-size:13px}.contact-options strong{font-size:21px}
.contact-options>a>span{font-size:25px;color:#ff9a61}
.contact-card,.contact-aside{border:1px solid var(--border-subtle);background:#0c2630;border-radius:17px}
.contact-card h2,.contact-aside h2{font-size:40px}.contact-card>p{font-size:19px}.contact-link{font-size:23px}
footer{background:#06121a;border-top:1px solid var(--border-subtle);padding:26px 0}
.footer-inner{font-size:16px;gap:20px;color:#a9c2ca}.footer-brand{font-size:27px;letter-spacing:.01em}
/* Remove redundant end-of-home CTA, contact block already offers all three actions. */
body.page-home .bottom-cta{display:none}
/* Desktop and tablet */
@media(max-width:1340px){
 .nav{gap:10px}.navigation a{font-size:16px!important;padding:10px 8px!important}.logo{font-size:29px}.logo img{width:55px;height:55px}
 .header-mail{font-size:14px!important;padding:10px 12px}
 .hero-copy h1{font-size:clamp(51px,5.2vw,69px)}
 .advertise-band{grid-template-columns:26% 23% 29% 22%}
}
@media(max-width:1180px){
 .home-hero{grid-template-columns:1fr}.stat-panel{display:grid;grid-template-columns:.75fr 1fr 2.3fr;gap:8px;align-items:center;padding:20px}.stat-panel h2{text-align:left}
 .stat-divider,.stat-panel .tagline{display:none}.category-grid{gap:14px 4px}
 .advertise-band{grid-template-columns:1.1fr 1fr 1.3fr}.advertise-band>img{display:none}
 .feature-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:1120px){
 .nav{min-height:76px}.menu-toggle{display:block;margin-left:auto;min-width:44px;min-height:42px;background:#102c37;color:white}
 .navigation{position:absolute;left:0;right:0;top:76px;display:none;flex-direction:column;gap:4px;align-items:stretch;background:#081a23;padding:14px 24px 22px;border-bottom:1px solid #2a6270;box-shadow:0 20px 28px #0009;max-height:calc(100vh - 76px);overflow:auto}
 .navigation.open{display:flex}.navigation a{font-size:22px!important;padding:11px 16px!important}
 .header-mail{display:none}
}
@media(max-width:900px){
 .info-grid,.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:1fr}
 .detail-banner{flex-direction:column;align-items:flex-start}.detail-banner .btn{align-self:flex-start}
 .contact-options{grid-template-columns:1fr}.advertise-band{grid-template-columns:1fr 1fr}.advertise-band .attention{grid-column:1/-1}
}
@media(max-width:760px){
 .shell{padding-left:18px;padding-right:18px}.hero-main{grid-template-columns:1fr;min-height:0}
 .hero-copy{padding:30px 27px 28px}.hero-copy h1{font-size:clamp(48px,10vw,64px)}
 .hero-copy>p{font-size:18px}.hero-photo{height:auto;min-height:0;aspect-ratio:16/9}
 .hero-photo img{height:100%;width:100%;object-fit:contain!important}.photo-overlay{bottom:12px;right:12px;padding:8px 12px}
 .stat-panel{display:block}.stat-panel h2{text-align:center}.stat-divider,.stat-panel .tagline{display:block}
 .category-grid{grid-template-columns:repeat(3,1fr);gap:20px 8px}
 .advertise-band{grid-template-columns:1fr}.advertise-band .attention{grid-column:auto}.advertise-band .adv-points{padding-top:8px}
 .section{padding-top:46px}.expanded-section{padding-top:52px}.section-head{align-items:flex-start;flex-direction:column}
 .section-head .btn{align-self:flex-start}.section-intro{font-size:18px}
 .feature-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-showcase{grid-template-columns:1fr 1fr}.home-showcase .photo-tile{aspect-ratio:16/9}
 .page-hero{padding-top:52px;padding-bottom:40px}.page-hero h1{font-size:clamp(51px,10vw,75px)}.page-hero p{font-size:20px}
 .split-block,.contact-layout{grid-template-columns:1fr;gap:25px}.split-block>img{height:auto;max-height:490px;object-fit:contain}
 .apply-hero{grid-template-columns:1fr}.apply-hero-art{max-width:200px}.apply-aside{grid-template-columns:1fr}
 .gallery-card img{height:370px}.ad-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .footer-inner{justify-content:flex-start;gap:12px 22px}
}
@media(max-width:560px){
 .logo{font-size:27px}.logo img{width:53px;height:53px}.logo small{font-size:8px;letter-spacing:.1em}
 .hero-copy{padding:26px 23px}.hero-copy h1{font-size:clamp(47px,12vw,58px)}
 .checklist{margin:16px 0}.checklist li{font-size:18px}.hero-copy .btn{width:100%;justify-content:center}
 .stat-panel{padding:25px 18px}.stat-panel>strong{font-size:83px}
 .home-showcase{grid-template-columns:1fr!important}.home-showcase .photo-tile{aspect-ratio:16/9}
 .info-grid,.steps-grid{grid-template-columns:1fr}.info-card,.steps-grid article{padding:22px}
 .section h2,.section-head h2,.expanded-section h2{font-size:clamp(36px,9vw,47px)}
 .photo-grid:not(.home-showcase){grid-template-columns:repeat(2,1fr)}
 .ad-gallery{gap:10px}.ad-card img{height:290px}.ad-card figcaption{font-size:15px}
 .feature{padding:12px 10px}.feature strong{font-size:16px}.feature small{font-size:12px}
 .detail-banner{padding:23px}.detail-banner .btn{width:100%;justify-content:center}
 .home-rate-grid{grid-template-columns:1fr}.contact-options strong{font-size:20px}
 .campaign-form,.apply-form{padding:19px}.apply-hero h1{font-size:56px}
 .gallery-card img{height:290px}.bottom-cta{padding-top:28px;padding-bottom:32px}
 .button-row{align-items:stretch}.button-row .btn{flex:1 1 100%;justify-content:center}
 .footer-inner{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Ambient backdrop fills the hero panel without cropping the real photograph. */
.hero-photo{isolation:isolate}
.hero-photo:after{content:'';position:absolute;inset:-30px;z-index:-1;background:url('assets/home-showcase-4-v2.jpg') center / cover no-repeat;filter:blur(24px) saturate(.65);opacity:.30;pointer-events:none}
.hero-photo img{position:relative;z-index:1}
.photo-overlay{z-index:2}
