/* ============================================
   DBR Marketing – Dreams Becoming Reality
   Main Stylesheet – Light/Dark Theme
   ============================================ */

:root {
    --dbr-orange: #E8883C;
    --dbr-orange-light: #F0A060;
    --dbr-orange-dark: #C86E28;
    --dbr-orange-glow: rgba(232, 136, 60, 0.15);
    --dbr-orange-subtle: rgba(232, 136, 60, 0.08);
    --font-display: 'Cormorant Garamond', Georgia, serif;
    --font-body: 'Outfit', -apple-system, sans-serif;
    --section-pad: clamp(4rem, 8vw, 8rem);
    --container-width: 1200px;
    --container-pad: clamp(1.5rem, 4vw, 3rem);
    --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
    --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Dark theme (default) */
[data-theme="dark"] {
    --bg-primary: #1a1a1a;
    --bg-secondary: #222222;
    --bg-elevated: #2a2a2a;
    --bg-surface: #333333;
    --bg-cream: #1a1a1a;
    --text-primary: #ffffff;
    --text-secondary: #cccccc;
    --text-muted: #888888;
    --border-subtle: rgba(255,255,255,0.08);
    --border-light: rgba(255,255,255,0.15);
    --card-bg: #2a2a2a;
    --card-border: rgba(255,255,255,0.06);
    --header-bg: rgba(26,26,26,0.95);
    --input-bg: #2a2a2a;
    --input-border: #444444;
    --shadow-card: rgba(0,0,0,0.3);
    --overlay-strong: rgba(26,26,26,0.9);
}

/* Light theme */
[data-theme="light"] {
    --bg-primary: #ffffff;
    --bg-secondary: #f5f2ed;
    --bg-elevated: #ffffff;
    --bg-surface: #f0ede8;
    --bg-cream: #faf8f5;
    --text-primary: #1a1a1a;
    --text-secondary: #333333;
    --text-muted: #777777;
    --border-subtle: rgba(0,0,0,0.08);
    --border-light: rgba(0,0,0,0.12);
    --card-bg: #ffffff;
    --card-border: rgba(0,0,0,0.08);
    --header-bg: rgba(255,255,255,0.95);
    --input-bg: #ffffff;
    --input-border: #d4d0cb;
    --shadow-card: rgba(0,0,0,0.08);
    --overlay-strong: rgba(0,0,0,0.7);
}

/* ---- Reset ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--font-body);font-weight:300;color:var(--text-primary);background:var(--bg-cream);line-height:1.7;overflow-x:hidden;transition:background .4s ease,color .4s ease}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.container{max-width:var(--container-width);margin:0 auto;padding:0 var(--container-pad)}

/* ---- Preloader ---- */
.preloader{position:fixed;inset:0;z-index:9999;background:#1a1a1a;display:flex;align-items:center;justify-content:center;transition:opacity .6s ease,visibility .6s ease}
.preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.preloader__butterfly svg{width:80px;height:60px}
.preloader__butterfly .wing{transform-origin:40px 30px;animation:flapWing .6s ease-in-out infinite alternate}
.preloader__butterfly .wing--left{animation-delay:0s}
.preloader__butterfly .wing--right{animation-delay:.05s}
@keyframes flapWing{0%{transform:scaleX(1) rotateY(0deg)}100%{transform:scaleX(.6) rotateY(40deg)}}

/* ---- Header ---- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 0;transition:all .4s var(--ease-out)}
.site-header.is-scrolled{background:var(--header-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:.5rem 0;box-shadow:0 4px 30px rgba(0,0,0,.1)}
.header__inner{max-width:var(--container-width);margin:0 auto;padding:0 var(--container-pad);display:flex;align-items:center;justify-content:space-between;gap:2rem}
.header__logo img{width:55px;height:55px;border-radius:50%;transition:transform .4s var(--ease-bounce)}
.header__logo:hover img{transform:scale(1.08)}
.site-header.is-scrolled .header__logo img{width:42px;height:42px}
.header__nav{display:none}
@media(min-width:900px){.header__nav{display:block}}
.nav__list{display:flex;gap:.25rem}
.nav__list a{display:block;padding:.5rem 1rem;font-size:.85rem;font-weight:400;letter-spacing:.04em;color:var(--text-primary);border-radius:100px;transition:all .3s var(--ease-out)}

/* On dark hero/page-header sections, nav text is always white before scroll */
.site-header:not(.is-scrolled) .nav__list a,
.site-header:not(.is-scrolled) .header__phone,
.site-header:not(.is-scrolled) .header__phone svg,
.site-header:not(.is-scrolled) .theme-toggle{color:#fff}
.site-header:not(.is-scrolled) .header__phone{border-color:rgba(255,255,255,.2)}
.site-header:not(.is-scrolled) .theme-toggle{border-color:rgba(255,255,255,.2)}
.site-header:not(.is-scrolled) .header__burger span{background:#fff}

.nav__list a:hover,.nav__list a.is-active{color:var(--dbr-orange)}
.nav__list a.is-active{background:var(--dbr-orange-glow)}
.header__actions{display:flex;align-items:center;gap:.75rem}
.header__phone{display:none;align-items:center;gap:.5rem;color:var(--text-primary);font-size:.85rem;font-weight:400;padding:.5rem 1.25rem;border:1px solid var(--border-light);border-radius:100px;transition:all .3s var(--ease-out)}
@media(min-width:768px){.header__phone{display:flex}}
.header__phone:hover{border-color:var(--dbr-orange);color:var(--dbr-orange)}

/* ---- Theme Toggle ---- */
.theme-toggle{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-light);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-primary);transition:all .3s var(--ease-out);position:relative}
.theme-toggle:hover{border-color:var(--dbr-orange);color:var(--dbr-orange);transform:rotate(15deg)}
.theme-toggle__sun,.theme-toggle__moon{position:absolute;transition:opacity .3s,transform .4s var(--ease-out)}
[data-theme="dark"] .theme-toggle__sun{opacity:1;transform:rotate(0deg)}
[data-theme="dark"] .theme-toggle__moon{opacity:0;transform:rotate(-90deg) scale(.5)}
[data-theme="light"] .theme-toggle__sun{opacity:0;transform:rotate(90deg) scale(.5)}
[data-theme="light"] .theme-toggle__moon{opacity:1;transform:rotate(0deg)}

/* ---- Burger ---- */
.header__burger{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:1001}
@media(min-width:900px){.header__burger{display:none}}
.header__burger span{width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:all .3s var(--ease-out);transform-origin:center}
.header__burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.header__burger.is-open span:nth-child(2){opacity:0}
.header__burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ---- Mobile Nav ---- */
.mobile-nav{position:fixed;inset:0;z-index:999;background:var(--bg-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;opacity:0;visibility:hidden;transition:all .5s var(--ease-out)}
.mobile-nav.is-open{opacity:1;visibility:visible}
.mobile-nav__list{text-align:center}
.mobile-nav__list li{overflow:hidden}
.mobile-nav__list a{display:block;font-family:var(--font-display);font-size:clamp(2rem,6vw,3.5rem);font-weight:300;color:var(--text-primary);padding:.25em 0;transform:translateY(100%);transition:transform .6s var(--ease-out),color .3s}
.mobile-nav.is-open .mobile-nav__list a{transform:translateY(0)}
.mobile-nav__list li:nth-child(1) a{transition-delay:.1s}
.mobile-nav__list li:nth-child(2) a{transition-delay:.15s}
.mobile-nav__list li:nth-child(3) a{transition-delay:.2s}
.mobile-nav__list li:nth-child(4) a{transition-delay:.25s}
.mobile-nav__list li:nth-child(5) a{transition-delay:.3s}
.mobile-nav__list a:hover{color:var(--dbr-orange)}
.mobile-nav__contact{display:flex;flex-direction:column;align-items:center;gap:.5rem}
.mobile-nav__contact a{color:var(--text-muted);font-size:.9rem;transition:color .3s}
.mobile-nav__contact a:hover{color:var(--dbr-orange)}
.mobile-nav__social{display:flex;gap:1.5rem}
.mobile-nav__social a{color:var(--text-muted);font-size:.8rem;letter-spacing:.1em;transition:color .3s}
.mobile-nav__social a:hover{color:var(--dbr-orange)}

/* ---- Hero (always dark bg) ---- */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;background:#1a1a1a;overflow:hidden}
.hero__bg{position:absolute;inset:0;overflow:hidden}
.hero__bg::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 70% 40%,rgba(232,136,60,.12) 0%,transparent 70%),radial-gradient(ellipse 40% 60% at 20% 70%,rgba(232,136,60,.08) 0%,transparent 60%)}
.hero__bg::after{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23E8883C' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.5}
.hero__content{position:relative;z-index:2;text-align:center;padding:2rem var(--container-pad);max-width:900px}
.hero__label{display:inline-block;font-size:.75rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--dbr-orange);margin-bottom:1.5rem;padding:.5em 1.5em;border:1px solid rgba(232,136,60,.3);border-radius:100px;opacity:0;animation:fadeUp .8s var(--ease-out) .3s forwards}
.hero__title{font-family:var(--font-display);font-size:clamp(2.5rem,7vw,5rem);font-weight:300;line-height:1.1;color:#fff;margin-bottom:1.5rem;opacity:0;animation:fadeUp .8s var(--ease-out) .5s forwards}
.hero__title em{font-style:italic;color:var(--dbr-orange)}
.hero__desc{font-size:clamp(1rem,1.5vw,1.15rem);color:#ccc;max-width:600px;margin:0 auto 2.5rem;opacity:0;animation:fadeUp .8s var(--ease-out) .7s forwards}
.hero__actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;opacity:0;animation:fadeUp .8s var(--ease-out) .9s forwards}
.hero .btn--outline{color:#fff;border-color:rgba(255,255,255,.25)}
.hero .btn--outline:hover{border-color:var(--dbr-orange);color:var(--dbr-orange)}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.hero__scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);color:#888;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:fadeUp .8s var(--ease-out) 1.2s forwards}
.hero__scroll-line{width:1px;height:40px;background:#888;position:relative;overflow:hidden}
.hero__scroll-line::after{content:'';position:absolute;top:-100%;left:0;width:100%;height:100%;background:var(--dbr-orange);animation:scrollLine 2s ease-in-out infinite}
@keyframes scrollLine{0%{top:-100%}50%{top:100%}100%{top:100%}}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85em 2em;font-family:var(--font-body);font-size:.85rem;font-weight:500;letter-spacing:.06em;border:none;border-radius:100px;cursor:pointer;transition:all .4s var(--ease-out);position:relative;overflow:hidden}
.btn--primary{background:var(--dbr-orange);color:#fff}
.btn--primary:hover{background:var(--dbr-orange-dark);transform:translateY(-2px);box-shadow:0 10px 30px rgba(232,136,60,.3)}
.btn--outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-light)}
.btn--outline:hover{border-color:var(--dbr-orange);color:var(--dbr-orange);transform:translateY(-2px)}
.btn--dark{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-light)}
.btn--dark:hover{border-color:var(--dbr-orange);color:var(--dbr-orange);transform:translateY(-2px)}

/* ---- Sections ---- */
.section{padding:var(--section-pad) 0;transition:background .4s ease}
.section--dark{background:var(--bg-primary);color:var(--text-primary)}
.section--cream{background:var(--bg-cream)}
[data-theme="light"] .section--cream{background:var(--bg-secondary)}
.section--gray{background:var(--bg-surface)}
.section__label{font-size:.7rem;font-weight:500;letter-spacing:.25em;text-transform:uppercase;color:var(--dbr-orange);margin-bottom:1rem}
.section__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1.2;margin-bottom:1.5rem;color:var(--text-primary)}
.section__title em{font-style:italic;color:var(--dbr-orange)}
.section__desc{font-size:1rem;color:var(--text-muted);max-width:600px;line-height:1.8}

/* ---- About Intro ---- */
.about-intro{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}
@media(min-width:768px){.about-intro{grid-template-columns:1fr 1fr;gap:5rem}}
.about-intro__visual{position:relative}
.about-intro__img{aspect-ratio:4/5;background:var(--bg-surface);border-radius:1rem;overflow:hidden;position:relative}
.about-intro__img::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--dbr-orange-glow) 0%,transparent 50%)}
.about-intro__stat{position:absolute;bottom:-1.5rem;right:-1rem;background:var(--dbr-orange);color:#fff;padding:1.5rem 2rem;border-radius:1rem;text-align:center;box-shadow:0 20px 40px rgba(232,136,60,.3)}
.about-intro__stat-number{font-family:var(--font-display);font-size:2.5rem;font-weight:700;line-height:1}
.about-intro__stat-label{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;opacity:.9}
.about-intro__text .section__desc{margin-bottom:1rem}

/* ---- Services Grid ---- */
.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:3rem}
.service-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1rem;padding:2.5rem 2rem;transition:all .5s var(--ease-out);position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--dbr-orange);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease-out)}
.service-card:hover::before{transform:scaleX(1)}
.service-card:hover{transform:translateY(-4px);border-color:rgba(232,136,60,.2);box-shadow:0 20px 40px var(--shadow-card)}
.service-card__icon{width:48px;height:48px;border-radius:12px;background:var(--dbr-orange-glow);display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:var(--dbr-orange)}
.service-card__title{font-family:var(--font-display);font-size:1.4rem;font-weight:500;margin-bottom:.75rem;color:var(--text-primary)}
.service-card__desc{font-size:.9rem;color:var(--text-muted);line-height:1.7}

/* ---- Portfolio Grid ---- */
.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:3rem}
.portfolio-card{position:relative;aspect-ratio:4/3;border-radius:1rem;overflow:hidden;cursor:pointer;background:var(--card-bg)}
.portfolio-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease-out)}
.portfolio-card:hover>img{transform:scale(1.05)}
.portfolio-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,var(--overlay-strong) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;opacity:0;transition:opacity .4s var(--ease-out)}
.portfolio-card:hover .portfolio-card__overlay{opacity:1}
.portfolio-card__title{font-family:var(--font-display);font-size:1.4rem;font-weight:500;color:#fff;margin-bottom:.25rem}
.portfolio-card__cat{font-size:.8rem;color:var(--dbr-orange);letter-spacing:.1em;text-transform:uppercase}

/* ---- CTA (always dark) ---- */
.cta{text-align:center;background:#1a1a1a;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 70% at 50% 50%,rgba(232,136,60,.1) 0%,transparent 70%)}
.cta__inner{position:relative;z-index:2}
.cta .section__title{color:#fff}
.cta .section__desc{margin:0 auto 2.5rem;color:#888}
.cta .section__label{color:var(--dbr-orange)}

/* ---- Contact ---- */
.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}
@media(min-width:768px){.contact-grid{grid-template-columns:1fr 1.2fr;gap:5rem}}
.contact-info__item{display:flex;gap:1rem;margin-bottom:2rem}
.contact-info__icon{width:48px;height:48px;flex-shrink:0;border-radius:12px;background:var(--dbr-orange-glow);display:flex;align-items:center;justify-content:center;color:var(--dbr-orange)}
.contact-info__label{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.25rem}
.contact-info__value{font-size:1.05rem;color:var(--text-primary)}
.contact-info__value a{transition:color .3s}
.contact-info__value a:hover{color:var(--dbr-orange)}
.contact-form{display:flex;flex-direction:column;gap:1.25rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
@media(max-width:500px){.form-row{grid-template-columns:1fr}}
.form-field{display:flex;flex-direction:column;gap:.4rem}
.form-field label{font-size:.75rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}
.form-field input,.form-field textarea,.form-field select{font-family:var(--font-body);font-size:.95rem;font-weight:300;padding:.85rem 1.25rem;border:1px solid var(--input-border);border-radius:.5rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .3s,box-shadow .3s;outline:none}
.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--dbr-orange);box-shadow:0 0 0 3px var(--dbr-orange-glow)}
.form-field textarea{min-height:140px;resize:vertical}
.form-success{display:none;text-align:center;padding:3rem 2rem}
.form-success.is-visible{display:block}
.form-success__icon{width:60px;height:60px;border-radius:50%;background:var(--dbr-orange);display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;color:#fff}

/* ---- Page Header (always dark) ---- */
.page-header{padding:10rem 0 4rem;background:#1a1a1a;text-align:center;position:relative;overflow:hidden}
.page-header::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 50% 60% at 50% 30%,rgba(232,136,60,.08) 0%,transparent 70%)}
.page-header__inner{position:relative;z-index:2}
.page-header__title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4rem);font-weight:300;color:#fff;margin-bottom:.5rem}
.page-header__sub{font-size:1rem;color:#888}

/* ---- Values ---- */
.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem}
.value-item{text-align:center;padding:2rem}
.value-item__number{font-family:var(--font-display);font-size:3rem;font-weight:300;color:var(--dbr-orange);line-height:1;margin-bottom:1rem}
.value-item__title{font-family:var(--font-display);font-size:1.3rem;font-weight:500;margin-bottom:.5rem;color:var(--text-primary)}
.value-item__desc{font-size:.9rem;color:var(--text-muted);line-height:1.7}

/* ---- Ticker ---- */
.ticker{padding:1.5rem 0;overflow:hidden;background:var(--dbr-orange);white-space:nowrap}
.ticker__track{display:flex;gap:3rem;animation:tickerScroll 30s linear infinite}
.ticker__item{font-family:var(--font-display);font-size:1.2rem;font-weight:500;color:#fff;display:flex;align-items:center;gap:3rem;flex-shrink:0}
.ticker__item::after{content:'✦';font-size:.6rem;opacity:.6}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ---- Footer (always dark) ---- */
.site-footer{background:#111;color:#fff;border-top:1px solid rgba(255,255,255,.06)}
.footer__inner{max-width:var(--container-width);margin:0 auto;padding:4rem var(--container-pad) 2rem}
.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:3rem;margin-bottom:3rem}
@media(max-width:900px){.footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:500px){.footer__grid{grid-template-columns:1fr}}
.footer__logo{border-radius:50%;margin-bottom:1rem}
.footer__tagline{font-family:var(--font-display);font-size:1.1rem;font-style:italic;color:var(--dbr-orange);margin-bottom:.75rem}
.footer__desc{font-size:.85rem;color:#888;line-height:1.7}
.footer__links h4,.footer__services h4,.footer__contact h4{font-size:.75rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1.25rem;color:#fff}
.footer__links li,.footer__services li{margin-bottom:.6rem}
.footer__links a{font-size:.9rem;color:#888;transition:color .3s}
.footer__links a:hover{color:var(--dbr-orange)}
.footer__services li{font-size:.9rem;color:#888}
.footer__contact li{display:flex;gap:.75rem;margin-bottom:1rem;font-size:.9rem;color:#888;align-items:flex-start}
.footer__contact li svg{flex-shrink:0;margin-top:3px;color:var(--dbr-orange)}
.footer__contact a{color:#888;transition:color .3s}
.footer__contact a:hover{color:var(--dbr-orange)}
.footer__social{display:flex;gap:1rem;margin-top:1.5rem}
.footer__social a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;color:#888;transition:all .3s var(--ease-out)}
.footer__social a:hover{background:var(--dbr-orange);border-color:var(--dbr-orange);color:#fff;transform:translateY(-2px)}
.footer__bottom{padding-top:2rem;border-top:1px solid rgba(255,255,255,.08);text-align:center}
.footer__bottom p{font-size:.8rem;color:#888}

/* ---- Animations ---- */
.fade-in{opacity:0;transform:translateY(30px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
.fade-in.is-visible{opacity:1;transform:translateY(0)}
.fade-in-left{opacity:0;transform:translateX(-40px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
.fade-in-left.is-visible{opacity:1;transform:translateX(0)}
.fade-in-right{opacity:0;transform:translateX(40px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}
.fade-in-right.is-visible{opacity:1;transform:translateX(0)}
.stagger-children>*{opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.stagger-children.is-visible>*:nth-child(1){transition-delay:0s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(2){transition-delay:.1s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(3){transition-delay:.15s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(4){transition-delay:.2s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(5){transition-delay:.25s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(6){transition-delay:.3s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(7){transition-delay:.35s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(8){transition-delay:.4s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(9){transition-delay:.45s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(10){transition-delay:.5s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(11){transition-delay:.55s;opacity:1;transform:none}
.stagger-children.is-visible>*:nth-child(12){transition-delay:.6s;opacity:1;transform:none}

/* ---- Utility ---- */
.text-center{text-align:center}
.text-orange{color:var(--dbr-orange)}
.mb-0{margin-bottom:0}
.mt-2{margin-top:2rem}
