/* Dog guide and homepage teaser share the existing maritime palette. */
.dog-teaser{background:var(--paper)}.dog-teaser-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:50px;align-items:center}
.dog-teaser p:not(.eyebrow){font-size:.9375rem;color:var(--muted);margin-top:18px;max-width:650px}.dog-teaser .button{font-size:.875rem;margin-top:24px}
.dog-teaser-facts{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.dog-teaser-facts li{padding:18px 0;border-bottom:1px solid var(--line);font-size:.875rem;line-height:1.7}.dog-teaser-facts strong{display:block;color:var(--teal);margin-bottom:4px}
.dog-hero{padding-block:38px 48px}.dog-hero h1{max-width:1000px;font-size:clamp(2.75rem,calc(4.7vw * var(--a11y-text-scale,1)),4.5rem)}
.dog-lead{font-size:1.0625rem;line-height:1.8;color:var(--muted);max-width:850px;margin-top:25px}.dog-hero .arrival-chips{margin-top:25px}
.dog-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}.dog-quick>div{border-top:1px solid var(--line);padding-top:18px}.dog-quick strong{font-size:1rem;line-height:1.6;display:block}.dog-quick p{font-size:.875rem;line-height:1.8;color:var(--muted);margin-top:8px}
.dog-ferry-section{background:#f1f3ee;border-block:1px solid var(--line)}.dog-port-tools{display:flex;flex-wrap:wrap;align-items:flex-end;gap:20px;margin-bottom:15px}.dog-port-tools .field{flex:1 1 280px;max-width:500px;min-width:0}.dog-port-tools select{width:100%;font-size:1rem}.dog-port-tools .reset-link{font-size:.875rem;min-height:52px}
.dog-port-status{font-size:.875rem;color:var(--muted);line-height:1.8;margin-bottom:20px}.dog-operator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.dog-operator{padding:27px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.dog-operator h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:1.75rem}
.dog-ports{font-size:.75rem;color:var(--teal);line-height:1.8;margin-bottom:8px}.dog-ships{font-size:.875rem;line-height:1.8;margin-top:10px;color:var(--muted)}
.dog-operator dl{margin:24px 0 10px}.dog-operator dt{font-size:.875rem;font-weight:700;line-height:1.7;margin-top:18px}.dog-operator dd{font-size:.875rem;line-height:1.8;color:var(--muted);margin:6px 0 0}
.dog-source-links{display:flex;flex-wrap:wrap;gap:0 18px}.dog-source-links a,.dog-guide-copy a,.dog-lodging a,.dog-note a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding-block:8px;font-size:.8125rem;color:var(--teal)}
.dog-guide-copy{max-width:1000px}.dog-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.dog-rules-grid article{border-top:1px solid var(--line);padding-top:22px;min-width:0}
.dog-rules-grid h3,.dog-lodging h3,.dog-packing h3{font-size:1.5rem;font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.4}
.dog-rules-grid p,.dog-lodging p,.dog-packing>p{font-size:.9375rem;color:var(--muted);line-height:1.8;margin-top:14px}
.dog-notice{border-left:3px solid var(--coral);background:var(--sand);padding:20px 23px;margin-top:25px}.dog-notice strong{font-size:.9375rem;line-height:1.8}.dog-notice p{font-size:.875rem;margin-top:7px;line-height:1.8;color:var(--muted)}
.dog-notice a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px;color:var(--teal);font-size:.8125rem}
.dog-note{font-size:.8125rem;line-height:1.9;color:var(--muted);margin-top:22px}.dog-note a{font-size:inherit}
.dog-lodging-section{background:#f1f3ee;border-block:1px solid var(--line)}.dog-lodging-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}.dog-lodging ul{font-size:.9375rem;line-height:1.9;color:var(--muted);padding-left:20px;margin-top:16px}
.dog-packing{padding:27px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.dog-pack-list{margin:18px 0 0;padding:0;border:0;min-width:0}.dog-pack-list legend{font-size:.875rem;line-height:1.8;font-weight:700;margin-bottom:8px}
.dog-pack-list label{display:flex;align-items:flex-start;gap:12px;padding-block:11px;min-height:44px;font-size:.875rem;line-height:1.7;cursor:pointer}.dog-pack-list input{width:1.125rem;height:1.125rem;margin:3px 0 0;accent-color:var(--teal);flex-shrink:0}
.dog-pack-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.dog-pack-bottom p,.dog-pack-bottom button{font-size:.8125rem;line-height:1.7}.dog-pack-bottom p{color:var(--teal)}
.dog-guide-footer{padding-block:35px}.dog-guide-footer p{font-size:.8125rem;color:var(--muted);line-height:1.9}.dog-guide-footer .text-link{margin-top:15px;font-size:.875rem;min-height:44px}
.dog-nav-link[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
.a11y-expanded-layout :is(.dog-teaser-inner,.dog-quick,.dog-operator-grid,.dog-rules-grid,.dog-lodging-grid){grid-template-columns:minmax(0,1fr)}
@media(max-width:850px){.dog-operator{padding:23px}.dog-quick{gap:18px}.dog-teaser-inner{gap:30px}}
@media(max-width:680px){.dog-teaser-inner,.dog-quick,.dog-operator-grid,.dog-rules-grid,.dog-lodging-grid{grid-template-columns:minmax(0,1fr)}.dog-hero{padding-block:30px}.dog-lead{font-size:1rem}.dog-operator{padding:23px 19px}.dog-quick{gap:20px}.dog-operator-grid,.dog-rules-grid{gap:23px}.dog-lodging-grid{gap:28px}.dog-packing{padding:23px 19px}.dog-port-tools{gap:8px}.dog-teaser .button{font-size:.8125rem}.dog-notice{padding:18px 20px}}
@media print{.dog-port-tools,.dog-pack-bottom button{display:none!important}.dog-operator-grid,.dog-rules-grid,.dog-lodging-grid,.dog-quick{display:block}.dog-operator,.dog-rules-grid article,.dog-packing{break-inside:avoid;margin-bottom:20px}.dog-ferry-section,.dog-lodging-section,.dog-operator,.dog-packing{background:white}}
