:root{
  --night:#10231C;--night-2:#173229;--moss:#2E4A3A;--leafy:#4C8A5E;--bulb:#FFD27A;--blush:#E9B8A7;
  --paper:#F6F4EF;--sheet:#FFFFFF;--ink:#1D2A24;--muted:#5A6660;--line:#DDD8CC;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"Nunito Sans",system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.7 var(--sans)}
img,svg{max-width:100%;height:auto}
a{color:#2F6B45;text-underline-offset:3px}
a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--bulb);outline-offset:2px}
.dg-skip{position:absolute;left:-999px;background:var(--bulb);padding:8px 12px;z-index:10}
.dg-skip:focus{left:8px;top:8px}

.dg-night{background:radial-gradient(120% 90% at 50% 0,var(--night-2),var(--night));color:#E8EEE9}
.dg-head{max-width:1160px;margin:0 auto;padding:18px 20px 0;display:flex;align-items:center;gap:22px}
.dg-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font:600 26px/1 var(--serif);margin-right:auto}
.dg-brand:hover{color:var(--bulb)}
.dg-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px}
.dg-nav a{color:#D5E0D8;text-decoration:none;font-size:15px;padding:6px 0;border-bottom:1px solid transparent}
.dg-nav a:hover,.dg-nav a[aria-current]{color:var(--bulb);border-bottom-color:var(--bulb)}
.dg-menu-btn{display:none;background:none;border:1px solid var(--bulb);color:var(--bulb);font:600 14px var(--sans);padding:7px 14px;border-radius:999px;cursor:pointer}
.dg-lights{display:block;width:100%;height:70px;margin-top:6px}
.dg-lights circle{filter:drop-shadow(0 0 6px rgba(255,210,122,.9))}
.dg-lights circle:nth-child(3n){animation:dg-glow 3.2s ease-in-out 1}
@keyframes dg-glow{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.dg-lights circle{animation:none}}

.dg-notice{margin:0 auto;max-width:1160px;padding:0 20px 18px;font-size:13.5px;color:#AFC2B5;text-align:center}
.dg-hero{background:var(--night);color:#fff;text-align:center;padding:24px 20px 150px}
.dg-hero h1{font:600 clamp(40px,6vw,78px)/1.02 var(--serif);margin:0 auto 18px;max-width:14em}
.dg-hero p{font-size:19px;color:#C9D6CD;max-width:34em;margin:0 auto 28px}
.dg-hero-cta{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;align-items:center}
.dg-btn{display:inline-block;background:var(--bulb);color:var(--night);text-decoration:none;font-weight:700;padding:13px 26px;border-radius:999px}
.dg-btn:hover{background:#fff;color:var(--night)}
.dg-link{color:var(--blush)}
.dg-link:hover{color:#fff}

/* paper sheet laid over the night */
.dg-body{max-width:1000px;margin:0 auto;padding:0 20px 70px}
.dg-front .dg-body{margin-top:-110px}
.dg-wrap{background:var(--sheet);border-radius:28px;padding:44px clamp(20px,6vw,72px) 40px;box-shadow:0 24px 50px -30px rgba(16,35,28,.5)}
.dg-inner .dg-wrap{margin-top:-60px;position:relative}
.dg-inner .dg-pagehead{background:var(--night);color:#fff;text-align:center;padding:10px 20px 96px}
.dg-pagehead h1{font:600 clamp(34px,5vw,58px)/1.05 var(--serif);margin:12px auto 0;max-width:16em}
.dg-crumbs{font-size:14px;color:#AFC2B5;display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.dg-crumbs a{color:#D5E0D8}
.dg-bloglist .dg-pagehead,.dg-single .dg-pagehead{padding-bottom:40px}

.dg-lead p:first-child{font:500 24px/1.45 var(--serif);color:var(--moss)}
.dg-body h2{font:600 34px/1.1 var(--serif);color:var(--night);margin:46px 0 12px}
.dg-body h2::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--bulb);box-shadow:0 0 0 4px #FFF1CC;margin:0 14px 6px 0;vertical-align:middle}
.dg-body h3{font:700 18px/1.3 var(--sans);margin:24px 0 6px;color:var(--moss)}
.dg-body section{scroll-margin-top:20px}

.dg-quick{margin:28px 0;padding:0;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden}
.dg-quick div{padding:14px 18px;border-bottom:1px solid var(--line)}
.dg-quick div:nth-child(odd){border-right:1px solid var(--line)}
.dg-quick dt{font-size:13px;color:var(--muted)}
.dg-quick dd{margin:2px 0 0;font:600 20px/1.25 var(--serif);color:var(--night)}

.dg-toc{margin:26px 0;padding:20px 24px;background:var(--night);color:#E8EEE9;border-radius:18px}
.dg-toc p{margin:0 0 8px;font:600 22px var(--serif);color:var(--bulb)}
.dg-toc ul{margin:0;padding:0;list-style:none;columns:2;column-gap:28px}
.dg-toc li{break-inside:avoid}
.dg-toc a{color:#E8EEE9;text-decoration:none;font-size:15px;display:block;padding:3px 0}
.dg-toc a:hover,.dg-toc a.is-on{color:var(--bulb)}

.dg-note,.dg-tip{padding:16px 20px;margin:22px 0;border-radius:16px}
.dg-note{background:#FFF6E0}
.dg-tip{background:#EAF2EC}
.dg-note p,.dg-tip p{margin:0}

.dg-tablewrap{overflow-x:auto;margin:16px 0 24px;border:1px solid var(--line);border-radius:16px}
.dg-body table{border-collapse:collapse;width:100%;font-size:15.5px}
.dg-body th{text-align:left;padding:11px 14px;background:#EFEBE1;color:var(--night);font-weight:700;white-space:nowrap}
.dg-body td{padding:9px 14px;border-top:1px solid var(--line)}
.dg-menu td:first-child{font-family:var(--serif);font-size:19px;font-weight:600}
.dg-menu td:nth-child(3){font-weight:700;white-space:nowrap}
.dg-steps ol{padding-left:1.3em}

.dg-faq details{border-top:1px solid var(--line);padding:4px 0}
.dg-faq summary{cursor:pointer;font:600 21px/1.3 var(--serif);padding:10px 0;color:var(--night)}
.dg-faq p{margin:0 0 14px;color:var(--muted)}

.dg-related ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.dg-related a{display:block;padding:10px 18px;border-radius:999px;background:var(--night);color:#fff;text-decoration:none;font-size:15px}
.dg-related a:hover{background:var(--leafy)}
.dg-guides ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.dg-guides a{display:block;height:100%;padding:20px;border-radius:20px;background:var(--paper);text-decoration:none;color:var(--ink);border:1px solid var(--line)}
.dg-guides a:hover{border-color:var(--leafy);background:#fff}
.dg-guides strong{display:block;font:600 23px/1.15 var(--serif);color:var(--night);margin-bottom:6px}
.dg-guides span{font-size:14.5px;color:var(--muted);line-height:1.5}
.dg-sources{font-size:14px;color:var(--muted)}
.dg-sources h2{font-size:26px}
.dg-sources h2::before{display:none}
.dg-sources a{color:var(--muted);word-break:break-word}
.dg-updated{font-size:13.5px;color:var(--muted);margin-top:30px;font-style:italic}

.dg-bloglist,.dg-single{margin:0 auto}
.dg-posts{list-style:none;padding:30px 20px;margin:0 auto;max-width:1000px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.dg-post{background:var(--sheet);border-radius:22px;overflow:hidden;border:1px solid var(--line)}
.dg-post img{aspect-ratio:16/10;object-fit:cover;width:100%}
.dg-post>div{padding:16px 20px}
.dg-post h2{font:600 24px/1.15 var(--serif);margin:0 0 4px}
.dg-post h2 a{color:var(--night);text-decoration:none}
.dg-post-date{font-size:13px;color:var(--muted);margin:0}
.dg-pager{max-width:1000px;margin:0 auto 60px;padding:0 20px;display:flex;gap:6px}
.dg-pager .page-numbers{padding:6px 12px;border-radius:999px;border:1px solid var(--line);text-decoration:none}
.dg-pager .current{background:var(--night);color:#fff}
.dg-single .dg-body{margin-top:24px}
.dg-postbody{background:var(--sheet);border-radius:28px;padding:36px clamp(20px,5vw,60px)}
.dg-more{max-width:1000px;margin:0 auto;padding:0 20px 60px}

.dg-foot{background:var(--night);color:#B9C9BE;font-size:15px;position:relative}
.dg-foot-in{max-width:1160px;margin:0 auto;padding:50px 20px 20px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
.dg-foot-name{font:600 28px var(--serif);color:#fff;margin:0 0 6px}
.dg-foot h2{font:600 20px var(--serif);color:var(--bulb);margin:0 0 8px}
.dg-foot ul{list-style:none;margin:0;padding:0}
.dg-foot a{color:#E3EAE5;text-decoration:none;line-height:1.9}
.dg-foot a:hover{color:var(--bulb)}
.dg-copy{max-width:1160px;margin:0 auto;padding:14px 20px 26px;font-size:13px;border-top:1px solid #24413A}

@media (max-width:820px){
  .dg-menu-btn{display:block}
  .dg-head{flex-wrap:wrap}
  .dg-nav{display:none;width:100%}
  .dg-nav.is-open{display:block}
  .dg-nav ul{flex-direction:column;padding:8px 0}
  .dg-foot-in{grid-template-columns:1fr}
  .dg-toc ul{columns:1}
}
@media (max-width:600px){
  .dg-quick{grid-template-columns:1fr}
  .dg-quick div:nth-child(odd){border-right:0}
  .dg-wrap{border-radius:20px}
  .dg-body{padding:0 12px 60px}
  .dg-brand{font-size:22px}
  .dg-hero{padding-bottom:130px}
}
